On Wed, Sep 29, 2010 at 4:28 PM, Marathe, Yogesh <yogesh_marathe@xxxxxx> wrote: > dsplink and syslink (two drivers who use iommu) should not enable > CONFIG_MPU_BRIDGE_IOMMU as dspbridge and dsplink /syslink > can not co-exist as they are using same resources. Not applying patch > breaks dsplink/sylink any one which is being used. Defining this config > makes them co-exist. No, for dsp-link you would have: CONFIG_TIDSPBRIDGE=n CONFIG_OMAP_IOMMU_IVA2=y It would be exactly the same as applying your patch. And tidspbridge is not using iommu right now. And AFAIK syslink is not for omap3, so omap3_devices is not relevant. > I'm ok with changing name to CONFIG_OMAP_IOMMU_IVA2 but ideally > then that will also break the dspbridge. No, grep for MPU_BRIDGE_IOMMU on the current tidspbridge in mainline; it's not defined anywhere, so CONFIG_OMAP_IOMMU_IVA2, or CONFIG_FOOBAR, it doesn't matter for tidspbridge right now. And MPU_BRIDGE_IOMMU doesn't depend on tidspbridge on any way. > One more way would be to soure revert the patch and apply on dspbridge branch if it breaks the builds on that branch rather than > breaking others in master. There is no tidspbrige branch; it's in mainline: http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=tree;f=drivers/staging/tidspbridge But that doesn't matter, even if it was in a branch, iommu should not break either tidspbridge, or dsp-link, and driver branches should not modify anything outside their domain (ideally). All you need to do is 'select OMAP_IOMMU_IVA2', although the attached patch would be needed. -- Felipe Contreras
From 2795948f11cb218eb7f4be26fd747727ba5c31da Mon Sep 17 00:00:00 2001 From: Felipe Contreras <felipe.contreras@xxxxxxxxx> Date: Wed, 29 Sep 2010 22:05:46 +0300 Subject: [PATCH] omap: iommu: make iva2 iommu selectable It seems dsp-link will do this, and tidspbridge too at some point, but right now it's not possible to select CONFIG_MPU_BRIDGE_IOMMU. Signed-off-by: Felipe Contreras <felipe.contreras@xxxxxxxxx> --- arch/arm/mach-omap2/omap-iommu.c | 2 +- arch/arm/plat-omap/Kconfig | 3 +++ 2 files changed, 4 insertions(+), 1 deletions(-) diff --git a/arch/arm/mach-omap2/omap-iommu.c b/arch/arm/mach-omap2/omap-iommu.c index f5a1aad..adc0904 100644 --- a/arch/arm/mach-omap2/omap-iommu.c +++ b/arch/arm/mach-omap2/omap-iommu.c @@ -35,7 +35,7 @@ static struct iommu_device omap3_devices[] = { .clk_name = "cam_ick", }, }, -#if defined(CONFIG_MPU_BRIDGE_IOMMU) +#if defined(CONFIG_OMAP_IOMMU_IVA2) { .base = 0x5d000000, .irq = 28, diff --git a/arch/arm/plat-omap/Kconfig b/arch/arm/plat-omap/Kconfig index e39a417..e0b41b6 100644 --- a/arch/arm/plat-omap/Kconfig +++ b/arch/arm/plat-omap/Kconfig @@ -109,6 +109,9 @@ config OMAP_IOMMU_DEBUG Say N unless you know you need this. +config OMAP_IOMMU_IVA2 + bool + choice prompt "System timer" default OMAP_32K_TIMER if !ARCH_OMAP15XX -- 1.7.3.2.g9e605