* Kanigeri, Hari <h-kanigeri2@xxxxxx> [100420 15:52]: > From 9a2bcae7a2de6890884c23c45563eece1e6838de Mon Sep 17 00:00:00 2001 > From: Hari Kanigeri <h-kanigeri2@xxxxxx> > Date: Tue, 20 Apr 2010 17:39:18 -0500 > Subject: [PATCH 2/4] OMAP:iommu support for OMAP4 > > This patch provides the iommu support for OMAP4 co-processors. > > Signed-off-by: Hari Kanigeri <h-kanigeri2@xxxxxx> > --- > arch/arm/mach-omap2/omap-iommu.c | 26 ++++++++++++++++++++++++++ > arch/arm/plat-omap/include/plat/omap44xx.h | 3 +++ > 2 files changed, 29 insertions(+), 0 deletions(-) > > diff --git a/arch/arm/mach-omap2/omap-iommu.c b/arch/arm/mach-omap2/omap-iommu.c > index 416a65d..f569371 100644 > --- a/arch/arm/mach-omap2/omap-iommu.c > +++ b/arch/arm/mach-omap2/omap-iommu.c > @@ -13,6 +13,7 @@ > #include <linux/platform_device.h> > > #include <plat/iommu.h> > +#include <plat/irqs.h> > > struct iommu_device { > resource_size_t base; > @@ -46,6 +47,31 @@ static struct iommu_device devices[] = { > }; > #endif > > +#ifdef CONFIG_ARCH_OMAP4 > +static struct iommu_device devices[] = { > + { > + .base = OMAP4_MMU1_BASE, > + .irq = INT_44XX_DUCATI_MMU_IRQ, > + .pdata = { > + .name = "ducati", > + .nr_tlb_entries = 32, > + .clk_name = "ducati_ick", > + }, > + }, > +#if defined(CONFIG_MPU_TESLA_IOMMU) > + { > + .base = OMAP4_MMU2_BASE, > + .irq = INT_44XX_DSP_MMU, > + .pdata = { > + .name = "tesla", > + .nr_tlb_entries = 32, > + .clk_name = "tesla_ick", > + }, > + }, > +#endif > +}; > +#endif This should use: static struct iommu_device *devices; #ifdef CONFIG_ARCH_OMAP3 static struct iommu_device omap3_devices[] = { ... #else #define omap3_devices NULL #endif #ifdef CONFIG_ARCH_OMAP4 static struct iommu_device omap4_devices[] = { ... #else #define omap4_devices NULL #endif Then in init, just set devices based on the omap type. Tony -- 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