summaryrefslogtreecommitdiff
path: root/arch/arm/Kconfig.platforms
blob: 845ab08e20a4b5b669428e738f9f680a7adda948 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
# 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

config ARCH_AIROHA
	bool "Airoha SoC Support"
	depends on ARCH_MULTI_V7
	select ARM_AMBA
	select ARM_GIC
	select ARM_GIC_V3
	select ARM_PSCI
	select HAVE_ARM_ARCH_TIMER
	help
	  Support for Airoha EN7523 SoCs

config MACH_ASM9260
	bool "Alphascale ASM9260"
	depends on ARCH_MULTI_V5
	depends on CPU_LITTLE_ENDIAN
	select CPU_ARM926T
	select ASM9260_TIMER
	help
	  Support for Alphascale ASM9260 based platform.

menuconfig ARCH_MOXART
	bool "MOXA ART SoC"
	depends on ARCH_MULTI_V4
	depends on CPU_LITTLE_ENDIAN
	select CPU_FA526
	select ARM_DMA_MEM_BUFFERABLE
	select FARADAY_FTINTC010
	select FTTMR010_TIMER
	select GPIOLIB
	select PHYLIB if NETDEVICES
	help
	  Say Y here if you want to run your kernel on hardware with a
	  MOXA ART SoC.
	  The MOXA ART SoC is based on a Faraday FA526 ARMv4 32-bit
	  192 MHz CPU with MMU and 16KB/8KB D/I-cache (UC-7112-LX).
	  Used on models UC-7101, UC-7112/UC-7110, IA240/IA241, IA3341.

if ARCH_MOXART

config MACH_UC7112LX
	bool "MOXA UC-7112-LX"
	depends on ARCH_MOXART
	help
	  Say Y here if you intend to run this kernel on a MOXA
	  UC-7112-LX embedded computer.

endif

config ARCH_NSPIRE
	bool "TI-NSPIRE based"
	depends on ARCH_MULTI_V4T
	depends on CPU_LITTLE_ENDIAN
	select CPU_ARM926T
	select GENERIC_IRQ_CHIP
	select ARM_AMBA
	select ARM_VIC
	select ARM_TIMER_SP804
	select NSPIRE_TIMER
	select POWER_RESET
	select POWER_RESET_SYSCON
	help
	  This enables support for systems using the TI-NSPIRE CPU

config ARCH_RDA
	bool "RDA Micro SoCs"
	depends on ARCH_MULTI_V7
	select RDA_INTC
	select RDA_TIMER
	help
	  This enables support for the RDA Micro 8810PL SoC family.

menuconfig ARCH_SUNPLUS
	bool "Sunplus SoCs"
	depends on ARCH_MULTI_V7
	help
	  Support for Sunplus SoC family: SP7021 and succeeding SoC-based systems,
	  such as the Banana Pi BPI-F2S development board (and derivatives).
	  (<http://www.sinovoip.com.cn/ecp_view.asp?id=586>)
	  (<https://tibbo.com/store/plus1.html>)

if ARCH_SUNPLUS

config SOC_SP7021
	bool "Sunplus SP7021 SoC support"
	default ARCH_SUNPLUS
	select HAVE_ARM_ARCH_TIMER
	select ARM_GIC
	select ARM_PSCI
	select PINCTRL
	select PINCTRL_SPPCTL
	select SERIAL_SUNPLUS if TTY
	select SERIAL_SUNPLUS_CONSOLE if TTY
	help
	  Support for Sunplus SP7021 SoC. It is based on ARM 4-core
	  Cortex-A7 with various peripherals (e.g.: I2C, SPI, SDIO,
	  Ethernet, etc.), FPGA interface,  chip-to-chip bus.
	  It is designed for industrial control.

endif

config ARCH_UNIPHIER
	bool "Socionext UniPhier SoCs"
	depends on ARCH_MULTI_V7
	select ARCH_HAS_RESET_CONTROLLER
	select ARM_AMBA
	select ARM_GLOBAL_TIMER
	select ARM_GIC
	select HAVE_ARM_SCU
	select HAVE_ARM_TWD if SMP
	select PINCTRL
	select RESET_CONTROLLER
	help
	  Support for UniPhier SoC family developed by Socionext Inc.
	  (formerly, System LSI Business Division of Panasonic Corporation)