On 2014-12-30 22:42, Rob Herring wrote: > On Mon, Dec 29, 2014 at 5:32 PM, Stefan Agner <stefan@xxxxxxxx> wrote: >> In order to support SoC with heterogenous CPU architectures (such >> as Freescale Vybrid/i.MXSX) it is preferable to use the same >> architecture (ARCH_MXC in this case) for the MMU enabled and !MMU >> CPU. Hence allow to select MULTIPLATFORM even without MMU. > > This has been submitted before[1], but you obviously have a better > reason now. I also need this for my Versatile series to fix > allnoconfig. However, there are some issues with your implementation. > >> Signed-off-by: Stefan Agner <stefan@xxxxxxxx> >> --- >> arch/arm/Kconfig | 21 ++++++++++----------- >> 1 file changed, 10 insertions(+), 11 deletions(-) >> >> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig >> index 97d07ed..95007b9 100644 >> --- a/arch/arm/Kconfig >> +++ b/arch/arm/Kconfig >> @@ -228,7 +228,7 @@ config VECTORS_BASE >> in size. >> >> config ARM_PATCH_PHYS_VIRT >> - bool "Patch physical to virtual translations at runtime" if EMBEDDED >> + bool "Patch physical to virtual translations at runtime" if EMBEDDED || (ARCH_MULTIPLATFORM && MMU) >> default y >> depends on !XIP_KERNEL && MMU >> depends on !ARCH_REALVIEW || !SPARSEMEM >> @@ -303,15 +303,12 @@ config MMU >> # >> choice >> prompt "ARM system type" >> - default ARCH_VERSATILE if !MMU >> - default ARCH_MULTIPLATFORM if MMU >> + default ARCH_MULTIPLATFORM >> >> config ARCH_MULTIPLATFORM >> bool "Allow multiple platforms to be selected" >> - depends on MMU >> select ARCH_WANT_OPTIONAL_GPIOLIB >> select ARM_HAS_SG_CHAIN >> - select ARM_PATCH_PHYS_VIRT >> select AUTO_ZRELADDR >> select CLKSRC_OF >> select COMMON_CLK >> @@ -783,13 +780,13 @@ comment "CPU Core family selection" >> >> config ARCH_MULTI_V4 >> bool "ARMv4 based platforms (FA526)" >> - depends on !ARCH_MULTI_V6_V7 >> + depends on !ARCH_MULTI_V6_V7 && MMU > > This is not right. !MMU does not mean the ARM arch does not have an > MMU, but rather the MMU is already setup with identity mapping (or > some other static mapping). Yes, I'm aware of that. However, there are several configuration depending on "!MMU". Allowing !MMU on ARCH_MULTI_V4...V7 would open up new combination of configurations... This patch avoids this as much as possible, by making !MMU only available for ARCH_MULTI_V7M. I'm not sure what tests/verification would be expected before allowing those new configurations... Personally, I also don't see much value in allowing these configurations. -- Stefan > > Rob > > [1] http://patchwork.ozlabs.org/patch/278996/ -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html