diff options
author | Ohad Ben-Cohen <ohad@wizery.com> | 2011-11-10 04:32:27 -0500 |
---|---|---|
committer | Joerg Roedel <joerg.roedel@amd.com> | 2011-11-10 05:40:37 -0500 |
commit | 66bc8cf3b1f70227a7847c88c24a36b4886bb3c3 (patch) | |
tree | f6eb15b1a1a78212a65fae350ef5d1580272897a /drivers/iommu | |
parent | 7d3002cc8c160dbda0e6ab9cd66dc6eb401b8b70 (diff) |
iommu/omap: announce supported page sizes
Let the IOMMU core know we support 4KiB, 64KiB, 1MiB and 16MiB page sizes.
This way the IOMMU core can split any arbitrary-sized physically
contiguous regions (that it needs to map) as needed.
Signed-off-by: Ohad Ben-Cohen <ohad@wizery.com>
Cc: Hiroshi DOYU <hdoyu@nvidia.com>
Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
Diffstat (limited to 'drivers/iommu')
-rw-r--r-- | drivers/iommu/omap-iommu.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/iommu/omap-iommu.c b/drivers/iommu/omap-iommu.c index ad80b1d0d099..08cf7ec5b4a5 100644 --- a/drivers/iommu/omap-iommu.c +++ b/drivers/iommu/omap-iommu.c | |||
@@ -33,6 +33,9 @@ | |||
33 | (__i < (n)) && (cr = __iotlb_read_cr((obj), __i), true); \ | 33 | (__i < (n)) && (cr = __iotlb_read_cr((obj), __i), true); \ |
34 | __i++) | 34 | __i++) |
35 | 35 | ||
36 | /* bitmap of the page sizes currently supported */ | ||
37 | #define OMAP_IOMMU_PGSIZES (SZ_4K | SZ_64K | SZ_1M | SZ_16M) | ||
38 | |||
36 | /** | 39 | /** |
37 | * struct omap_iommu_domain - omap iommu domain | 40 | * struct omap_iommu_domain - omap iommu domain |
38 | * @pgtable: the page table | 41 | * @pgtable: the page table |
@@ -1207,6 +1210,7 @@ static struct iommu_ops omap_iommu_ops = { | |||
1207 | .unmap = omap_iommu_unmap, | 1210 | .unmap = omap_iommu_unmap, |
1208 | .iova_to_phys = omap_iommu_iova_to_phys, | 1211 | .iova_to_phys = omap_iommu_iova_to_phys, |
1209 | .domain_has_cap = omap_iommu_domain_has_cap, | 1212 | .domain_has_cap = omap_iommu_domain_has_cap, |
1213 | .pgsize_bitmap = OMAP_IOMMU_PGSIZES, | ||
1210 | }; | 1214 | }; |
1211 | 1215 | ||
1212 | static int __init omap_iommu_init(void) | 1216 | static int __init omap_iommu_init(void) |