Skip to content

Commit 20e3ab9

Browse files
glneoarndb
authored andcommitted
ARM: Kconfig: move platform selection into its own Kconfig file
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>
1 parent 2560cff commit 20e3ab9

2 files changed

Lines changed: 69 additions & 66 deletions

File tree

arch/arm/Kconfig

Lines changed: 1 addition & 66 deletions
Original file line numberDiff line numberDiff line change
@@ -340,72 +340,7 @@ config ARCH_MULTIPLATFORM
340340
Selecting N here allows using those options, including
341341
DEBUG_UNCOMPRESS, XIP_KERNEL and ZBOOT_ROM. If unsure, say Y.
342342

343-
menu "Platform selection"
344-
depends on MMU
345-
346-
comment "CPU Core family selection"
347-
348-
config ARCH_MULTI_V4
349-
bool "ARMv4 based platforms (FA526, StrongARM)"
350-
depends on !ARCH_MULTI_V6_V7
351-
# https://github.com/llvm/llvm-project/issues/50764
352-
depends on !LD_IS_LLD || LLD_VERSION >= 160000
353-
select ARCH_MULTI_V4_V5
354-
select CPU_FA526 if !(CPU_SA110 || CPU_SA1100)
355-
356-
config ARCH_MULTI_V4T
357-
bool "ARMv4T based platforms (ARM720T, ARM920T, ...)"
358-
depends on !ARCH_MULTI_V6_V7
359-
# https://github.com/llvm/llvm-project/issues/50764
360-
depends on !LD_IS_LLD || LLD_VERSION >= 160000
361-
select ARCH_MULTI_V4_V5
362-
select CPU_ARM920T if !(CPU_ARM7TDMI || CPU_ARM720T || \
363-
CPU_ARM740T || CPU_ARM9TDMI || CPU_ARM922T || \
364-
CPU_ARM925T || CPU_ARM940T)
365-
366-
config ARCH_MULTI_V5
367-
bool "ARMv5 based platforms (ARM926T, XSCALE, PJ1, ...)"
368-
depends on !ARCH_MULTI_V6_V7
369-
select ARCH_MULTI_V4_V5
370-
select CPU_ARM926T if !(CPU_ARM946E || CPU_ARM1020 || \
371-
CPU_ARM1020E || CPU_ARM1022 || CPU_ARM1026 || \
372-
CPU_XSCALE || CPU_XSC3 || CPU_MOHAWK || CPU_FEROCEON)
373-
374-
config ARCH_MULTI_V4_V5
375-
bool
376-
377-
config ARCH_MULTI_V6
378-
bool "ARMv6 based platforms (ARM11)"
379-
select ARCH_MULTI_V6_V7
380-
select CPU_V6K
381-
382-
config ARCH_MULTI_V7
383-
bool "ARMv7 based platforms (Cortex-A, PJ4, Scorpion, Krait)"
384-
default y
385-
select ARCH_MULTI_V6_V7
386-
select CPU_V7
387-
select HAVE_SMP
388-
389-
config ARCH_MULTI_V6_V7
390-
bool
391-
select MIGHT_HAVE_CACHE_L2X0
392-
393-
config ARCH_MULTI_CPU_AUTO
394-
def_bool !(ARCH_MULTI_V4 || ARCH_MULTI_V4T || ARCH_MULTI_V6_V7)
395-
select ARCH_MULTI_V5
396-
397-
endmenu
398-
399-
config ARCH_VIRT
400-
bool "Dummy Virtual Machine"
401-
depends on ARCH_MULTI_V7
402-
select ARM_AMBA
403-
select ARM_GIC
404-
select ARM_GIC_V2M if PCI
405-
select ARM_GIC_V3
406-
select ARM_GIC_V3_ITS if PCI
407-
select ARM_PSCI
408-
select HAVE_ARM_ARCH_TIMER
343+
source "arch/arm/Kconfig.platforms"
409344

410345
config ARCH_AIROHA
411346
bool "Airoha SoC Support"

arch/arm/Kconfig.platforms

Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
# SPDX-License-Identifier: GPL-2.0-only
2+
3+
menu "Platform selection"
4+
depends on MMU
5+
6+
comment "CPU Core family selection"
7+
8+
config ARCH_MULTI_V4
9+
bool "ARMv4 based platforms (FA526, StrongARM)"
10+
depends on !ARCH_MULTI_V6_V7
11+
# https://github.com/llvm/llvm-project/issues/50764
12+
depends on !LD_IS_LLD || LLD_VERSION >= 160000
13+
select ARCH_MULTI_V4_V5
14+
select CPU_FA526 if !(CPU_SA110 || CPU_SA1100)
15+
16+
config ARCH_MULTI_V4T
17+
bool "ARMv4T based platforms (ARM720T, ARM920T, ...)"
18+
depends on !ARCH_MULTI_V6_V7
19+
# https://github.com/llvm/llvm-project/issues/50764
20+
depends on !LD_IS_LLD || LLD_VERSION >= 160000
21+
select ARCH_MULTI_V4_V5
22+
select CPU_ARM920T if !(CPU_ARM7TDMI || CPU_ARM720T || \
23+
CPU_ARM740T || CPU_ARM9TDMI || CPU_ARM922T || \
24+
CPU_ARM925T || CPU_ARM940T)
25+
26+
config ARCH_MULTI_V5
27+
bool "ARMv5 based platforms (ARM926T, XSCALE, PJ1, ...)"
28+
depends on !ARCH_MULTI_V6_V7
29+
select ARCH_MULTI_V4_V5
30+
select CPU_ARM926T if !(CPU_ARM946E || CPU_ARM1020 || \
31+
CPU_ARM1020E || CPU_ARM1022 || CPU_ARM1026 || \
32+
CPU_XSCALE || CPU_XSC3 || CPU_MOHAWK || CPU_FEROCEON)
33+
34+
config ARCH_MULTI_V4_V5
35+
bool
36+
37+
config ARCH_MULTI_V6
38+
bool "ARMv6 based platforms (ARM11)"
39+
select ARCH_MULTI_V6_V7
40+
select CPU_V6K
41+
42+
config ARCH_MULTI_V7
43+
bool "ARMv7 based platforms (Cortex-A, PJ4, Scorpion, Krait)"
44+
default y
45+
select ARCH_MULTI_V6_V7
46+
select CPU_V7
47+
select HAVE_SMP
48+
49+
config ARCH_MULTI_V6_V7
50+
bool
51+
select MIGHT_HAVE_CACHE_L2X0
52+
53+
config ARCH_MULTI_CPU_AUTO
54+
def_bool !(ARCH_MULTI_V4 || ARCH_MULTI_V4T || ARCH_MULTI_V6_V7)
55+
select ARCH_MULTI_V5
56+
57+
endmenu
58+
59+
config ARCH_VIRT
60+
bool "Dummy Virtual Machine"
61+
depends on ARCH_MULTI_V7
62+
select ARM_AMBA
63+
select ARM_GIC
64+
select ARM_GIC_V2M if PCI
65+
select ARM_GIC_V3
66+
select ARM_GIC_V3_ITS if PCI
67+
select ARM_PSCI
68+
select HAVE_ARM_ARCH_TIMER

0 commit comments

Comments
 (0)