ARM: Kconfig: move platform selection into its own Kconfig file
authorAndrew Davis <afd@ti.com>
Mon, 13 Nov 2023 14:43:51 +0000 (08:43 -0600)
committerArnd Bergmann <arnd@arndb.de>
Fri, 22 Dec 2023 14:12:27 +0000 (14:12 +0000)
Mostly just for better organization for now. This matches what is done on
some other platforms including ARM64. This also lets us start to reduce
the number of mach- directories that only exist to store the platform
selection.

Start with "Platform selection" and ARCH_VIRT.

Signed-off-by: Andrew Davis <afd@ti.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
arch/arm/Kconfig
arch/arm/Kconfig.platforms [new file with mode: 0644]

index f8567e95f98bef4ac91bf1088552b64f79422de6..c39e3db466897e8722900622be33eade1dd0ba89 100644 (file)
@@ -340,72 +340,7 @@ config ARCH_MULTIPLATFORM
          Selecting N here allows using those options, including
          DEBUG_UNCOMPRESS, XIP_KERNEL and ZBOOT_ROM. If unsure, say Y.
 
-menu "Platform selection"
-       depends on MMU
-
-comment "CPU Core family selection"
-
-config ARCH_MULTI_V4
-       bool "ARMv4 based platforms (FA526, StrongARM)"
-       depends on !ARCH_MULTI_V6_V7
-       # https://github.com/llvm/llvm-project/issues/50764
-       depends on !LD_IS_LLD || LLD_VERSION >= 160000
-       select ARCH_MULTI_V4_V5
-       select CPU_FA526 if !(CPU_SA110 || CPU_SA1100)
-
-config ARCH_MULTI_V4T
-       bool "ARMv4T based platforms (ARM720T, ARM920T, ...)"
-       depends on !ARCH_MULTI_V6_V7
-       # https://github.com/llvm/llvm-project/issues/50764
-       depends on !LD_IS_LLD || LLD_VERSION >= 160000
-       select ARCH_MULTI_V4_V5
-       select CPU_ARM920T if !(CPU_ARM7TDMI || CPU_ARM720T || \
-               CPU_ARM740T || CPU_ARM9TDMI || CPU_ARM922T || \
-               CPU_ARM925T || CPU_ARM940T)
-
-config ARCH_MULTI_V5
-       bool "ARMv5 based platforms (ARM926T, XSCALE, PJ1, ...)"
-       depends on !ARCH_MULTI_V6_V7
-       select ARCH_MULTI_V4_V5
-       select CPU_ARM926T if !(CPU_ARM946E || CPU_ARM1020 || \
-               CPU_ARM1020E || CPU_ARM1022 || CPU_ARM1026 || \
-               CPU_XSCALE || CPU_XSC3 || CPU_MOHAWK || CPU_FEROCEON)
-
-config ARCH_MULTI_V4_V5
-       bool
-
-config ARCH_MULTI_V6
-       bool "ARMv6 based platforms (ARM11)"
-       select ARCH_MULTI_V6_V7
-       select CPU_V6K
-
-config ARCH_MULTI_V7
-       bool "ARMv7 based platforms (Cortex-A, PJ4, Scorpion, Krait)"
-       default y
-       select ARCH_MULTI_V6_V7
-       select CPU_V7
-       select HAVE_SMP
-
-config ARCH_MULTI_V6_V7
-       bool
-       select MIGHT_HAVE_CACHE_L2X0
-
-config ARCH_MULTI_CPU_AUTO
-       def_bool !(ARCH_MULTI_V4 || ARCH_MULTI_V4T || ARCH_MULTI_V6_V7)
-       select ARCH_MULTI_V5
-
-endmenu
-
-config ARCH_VIRT
-       bool "Dummy Virtual Machine"
-       depends on ARCH_MULTI_V7
-       select ARM_AMBA
-       select ARM_GIC
-       select ARM_GIC_V2M if PCI
-       select ARM_GIC_V3
-       select ARM_GIC_V3_ITS if PCI
-       select ARM_PSCI
-       select HAVE_ARM_ARCH_TIMER
+source "arch/arm/Kconfig.platforms"
 
 config ARCH_AIROHA
        bool "Airoha SoC Support"
diff --git a/arch/arm/Kconfig.platforms b/arch/arm/Kconfig.platforms
new file mode 100644 (file)
index 0000000..ed1f6da
--- /dev/null
@@ -0,0 +1,68 @@
+# SPDX-License-Identifier: GPL-2.0-only
+
+menu "Platform selection"
+       depends on MMU
+
+comment "CPU Core family selection"
+
+config ARCH_MULTI_V4
+       bool "ARMv4 based platforms (FA526, StrongARM)"
+       depends on !ARCH_MULTI_V6_V7
+       # https://github.com/llvm/llvm-project/issues/50764
+       depends on !LD_IS_LLD || LLD_VERSION >= 160000
+       select ARCH_MULTI_V4_V5
+       select CPU_FA526 if !(CPU_SA110 || CPU_SA1100)
+
+config ARCH_MULTI_V4T
+       bool "ARMv4T based platforms (ARM720T, ARM920T, ...)"
+       depends on !ARCH_MULTI_V6_V7
+       # https://github.com/llvm/llvm-project/issues/50764
+       depends on !LD_IS_LLD || LLD_VERSION >= 160000
+       select ARCH_MULTI_V4_V5
+       select CPU_ARM920T if !(CPU_ARM7TDMI || CPU_ARM720T || \
+               CPU_ARM740T || CPU_ARM9TDMI || CPU_ARM922T || \
+               CPU_ARM925T || CPU_ARM940T)
+
+config ARCH_MULTI_V5
+       bool "ARMv5 based platforms (ARM926T, XSCALE, PJ1, ...)"
+       depends on !ARCH_MULTI_V6_V7
+       select ARCH_MULTI_V4_V5
+       select CPU_ARM926T if !(CPU_ARM946E || CPU_ARM1020 || \
+               CPU_ARM1020E || CPU_ARM1022 || CPU_ARM1026 || \
+               CPU_XSCALE || CPU_XSC3 || CPU_MOHAWK || CPU_FEROCEON)
+
+config ARCH_MULTI_V4_V5
+       bool
+
+config ARCH_MULTI_V6
+       bool "ARMv6 based platforms (ARM11)"
+       select ARCH_MULTI_V6_V7
+       select CPU_V6K
+
+config ARCH_MULTI_V7
+       bool "ARMv7 based platforms (Cortex-A, PJ4, Scorpion, Krait)"
+       default y
+       select ARCH_MULTI_V6_V7
+       select CPU_V7
+       select HAVE_SMP
+
+config ARCH_MULTI_V6_V7
+       bool
+       select MIGHT_HAVE_CACHE_L2X0
+
+config ARCH_MULTI_CPU_AUTO
+       def_bool !(ARCH_MULTI_V4 || ARCH_MULTI_V4T || ARCH_MULTI_V6_V7)
+       select ARCH_MULTI_V5
+
+endmenu
+
+config ARCH_VIRT
+       bool "Dummy Virtual Machine"
+       depends on ARCH_MULTI_V7
+       select ARM_AMBA
+       select ARM_GIC
+       select ARM_GIC_V2M if PCI
+       select ARM_GIC_V3
+       select ARM_GIC_V3_ITS if PCI
+       select ARM_PSCI
+       select HAVE_ARM_ARCH_TIMER