The following patches add initial support of omap iommu. Some of TI OMAP series have the peripheral devices with their own MMU(iommu), which is composed of its own tlb and optional h/w pagetable(twl). These MMUs don't depend on mpu(arm) mmu at all, but their algorithms are somewhat similar and they share the same physical address space. This patch provides with common in-kernel iommu APIs such OMAP peripheral devices(Camera ISP, IVA1, IVA2, DSP and the equivalent ones in the latest OMAP successors) to handle peripheral device iommus in the same manner. --- Hiroshi DOYU (6): omap2 iommu: entries for Kconfig and Makefile omap iommu: entries for Kconfig and Makefile omap iommu: simple virtual address space management omap iommu: omap3 iommu device registration omap iommu: omap2 architecture specific functions omap iommu: tlb and pagetable primitives arch/arm/include/asm/io.h | 6 arch/arm/mach-omap2/Makefile | 5 arch/arm/mach-omap2/iommu2.c | 325 +++++++++++ arch/arm/mach-omap2/omap3-iommu.c | 111 ++++ arch/arm/mm/ioremap.c | 11 arch/arm/plat-omap/Kconfig | 8 arch/arm/plat-omap/Makefile | 1 arch/arm/plat-omap/include/mach/iommu.h | 157 +++++ arch/arm/plat-omap/include/mach/iommu2.h | 94 +++ arch/arm/plat-omap/include/mach/iovmm.h | 94 +++ arch/arm/plat-omap/iommu.c | 913 ++++++++++++++++++++++++++++++ arch/arm/plat-omap/iopgtable.h | 72 ++ arch/arm/plat-omap/iovmm.c | 892 +++++++++++++++++++++++++++++ 13 files changed, 2689 insertions(+), 0 deletions(-) create mode 100644 arch/arm/mach-omap2/iommu2.c create mode 100644 arch/arm/mach-omap2/omap3-iommu.c create mode 100644 arch/arm/plat-omap/include/mach/iommu.h create mode 100644 arch/arm/plat-omap/include/mach/iommu2.h create mode 100644 arch/arm/plat-omap/include/mach/iovmm.h create mode 100644 arch/arm/plat-omap/iommu.c create mode 100644 arch/arm/plat-omap/iopgtable.h create mode 100644 arch/arm/plat-omap/iovmm.c -- Hiroshi DOYU -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html