1 /* 2 * omap iommu: main structures 3 * 4 * Copyright (C) 2008-2009 Nokia Corporation 5 * 6 * Written by Hiroshi DOYU <[email protected]> 7 * 8 * This program is free software; you can redistribute it and/or modify 9 * it under the terms of the GNU General Public License version 2 as 10 * published by the Free Software Foundation. 11 */ 12 13 #define MMU_REG_SIZE 256 14 15 /** 16 * struct iommu_arch_data - omap iommu private data 17 * @name: name of the iommu device 18 * @iommu_dev: handle of the iommu device 19 * 20 * This is an omap iommu private data object, which binds an iommu user 21 * to its iommu device. This object should be placed at the iommu user's 22 * dev_archdata so generic IOMMU API can be used without having to 23 * utilize omap-specific plumbing anymore. 24 */ 25 struct omap_iommu_arch_data { 26 const char *name; 27 struct omap_iommu *iommu_dev; 28 }; 29 30 /** 31 * struct omap_mmu_dev_attr - OMAP mmu device attributes for omap_hwmod 32 * @da_start: device address where the va space starts. 33 * @da_end: device address where the va space ends. 34 * @nr_tlb_entries: number of entries supported by the translation 35 * look-aside buffer (TLB). 36 */ 37 struct omap_mmu_dev_attr { 38 u32 da_start; 39 u32 da_end; 40 int nr_tlb_entries; 41 }; 42 43 struct iommu_platform_data { 44 const char *name; 45 const char *clk_name; 46 const int nr_tlb_entries; 47 u32 da_start; 48 u32 da_end; 49 }; 50