* Kanigeri, Hari <[email protected]> [100420 15:52]:
> From 9a2bcae7a2de6890884c23c45563eece1e6838de Mon Sep 17 00:00:00 2001
> From: Hari Kanigeri <[email protected]>
> 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 <[email protected]>
> ---
> 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 [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html