Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
1# SPDX-License-Identifier: GPL-2.0
2config ARCH_VERSATILE
3 bool "ARM Ltd. Versatile family"
4 depends on ARCH_MULTI_V5
5 depends on CPU_LITTLE_ENDIAN
6 select ARM_AMBA
7 select ARM_TIMER_SP804
8 select ARM_VIC
9 select CLKSRC_VERSATILE
10 select CPU_ARM926T
11 select CLK_ICST
12 select MFD_SYSCON
13 select PLAT_VERSATILE
14 select POWER_RESET
15 select POWER_RESET_VERSATILE
16 select VERSATILE_FPGA_IRQ
17 help
18 This enables support for ARM Ltd Versatile board.
19
20menuconfig ARCH_INTEGRATOR
21 bool "ARM Ltd. Integrator family"
22 depends on ARCH_MULTI_V4T || ARCH_MULTI_V5 || ARCH_MULTI_V6
23 depends on CPU_LITTLE_ENDIAN || ARCH_MULTI_V6
24 select ARM_AMBA
25 select CMA
26 select DMA_CMA
27 select HAVE_TCM
28 select CLK_ICST
29 select MFD_SYSCON
30 select PLAT_VERSATILE
31 select POWER_RESET
32 select POWER_RESET_VERSATILE
33 select POWER_SUPPLY
34 select SOC_INTEGRATOR_CM
35 select VERSATILE_FPGA_IRQ
36 help
37 Support for ARM's Integrator platform.
38
39if ARCH_INTEGRATOR
40
41config ARCH_INTEGRATOR_AP
42 bool "Support Integrator/AP and Integrator/PP2 platforms"
43 select INTEGRATOR_AP_TIMER
44 select SERIAL_AMBA_PL010 if TTY
45 select SERIAL_AMBA_PL010_CONSOLE if TTY
46 select SOC_BUS
47 help
48 Include support for the ARM(R) Integrator/AP and
49 Integrator/PP2 platforms.
50
51config INTEGRATOR_IMPD1
52 bool "Include support for Integrator/IM-PD1"
53 depends on ARCH_INTEGRATOR_AP
54 select ARM_VIC
55 select GPIO_PL061
56 select GPIOLIB
57 select REGULATOR
58 select REGULATOR_FIXED_VOLTAGE
59 help
60 The IM-PD1 is an add-on logic module for the Integrator which
61 allows ARM(R) Ltd PrimeCells to be developed and evaluated.
62 The IM-PD1 can be found on the Integrator/PP2 platform.
63
64config INTEGRATOR_CM720T
65 bool "Integrator/CM720T core module"
66 depends on ARCH_INTEGRATOR_AP
67 depends on ARCH_MULTI_V4T
68 select CPU_ARM720T
69
70config INTEGRATOR_CM920T
71 bool "Integrator/CM920T core module"
72 depends on ARCH_INTEGRATOR_AP
73 depends on ARCH_MULTI_V4T
74 select CPU_ARM920T
75
76config INTEGRATOR_CM922T_XA10
77 bool "Integrator/CM922T-XA10 core module"
78 depends on ARCH_MULTI_V4T
79 depends on ARCH_INTEGRATOR_AP
80 select CPU_ARM922T
81
82config INTEGRATOR_CM926EJS
83 bool "Integrator/CM926EJ-S core module"
84 depends on ARCH_INTEGRATOR_AP
85 depends on ARCH_MULTI_V5
86 select CPU_ARM926T
87
88config INTEGRATOR_CM10200E_REV0
89 bool "Integrator/CM10200E rev.0 core module"
90 depends on ARCH_INTEGRATOR_AP && n
91 depends on ARCH_MULTI_V5
92 select CPU_ARM1020
93
94config INTEGRATOR_CM10200E
95 bool "Integrator/CM10200E core module"
96 depends on ARCH_INTEGRATOR_AP && n
97 depends on ARCH_MULTI_V5
98 select CPU_ARM1020E
99
100config INTEGRATOR_CM10220E
101 bool "Integrator/CM10220E core module"
102 depends on ARCH_INTEGRATOR_AP
103 depends on ARCH_MULTI_V5
104 select CPU_ARM1022
105
106config INTEGRATOR_CM1026EJS
107 bool "Integrator/CM1026EJ-S core module"
108 depends on ARCH_INTEGRATOR_AP
109 depends on ARCH_MULTI_V5
110 select CPU_ARM1026
111
112config INTEGRATOR_CM1136JFS
113 bool "Integrator/CM1136JF-S core module"
114 depends on ARCH_INTEGRATOR_AP
115 depends on ARCH_MULTI_V6
116 select CPU_V6
117
118config ARCH_INTEGRATOR_CP
119 bool "Support Integrator/CP platform"
120 depends on ARCH_MULTI_V5 || ARCH_MULTI_V6
121 select ARM_TIMER_SP804
122 select SERIAL_AMBA_PL011 if TTY
123 select SERIAL_AMBA_PL011_CONSOLE if TTY
124 select SOC_BUS
125 help
126 Include support for the ARM(R) Integrator CP platform.
127
128config INTEGRATOR_CT926
129 bool "Integrator/CT926 (ARM926EJ-S) core tile"
130 depends on ARCH_INTEGRATOR_CP
131 depends on ARCH_MULTI_V5
132 select CPU_ARM926T
133
134config INTEGRATOR_CTB36
135 bool "Integrator/CTB36 (ARM1136JF-S) core tile"
136 depends on ARCH_INTEGRATOR_CP
137 depends on ARCH_MULTI_V6
138 select CPU_V6
139
140config ARCH_CINTEGRATOR
141 depends on ARCH_INTEGRATOR_CP
142 def_bool y
143
144endif
145
146menuconfig ARCH_REALVIEW
147 bool "ARM Ltd. RealView family"
148 depends on (CPU_LITTLE_ENDIAN && ARCH_MULTI_V5) || ARCH_MULTI_V6 || ARCH_MULTI_V7
149 select ARM_AMBA
150 select ARM_GIC
151 select ARM_TIMER_SP804
152 select CLK_SP810
153 select GPIO_PL061 if GPIOLIB
154 select HAVE_ARM_SCU if SMP
155 select HAVE_ARM_TWD if SMP
156 select HAVE_PATA_PLATFORM
157 select HAVE_TCM
158 select CLK_ICST
159 select MACH_REALVIEW_EB if ARCH_MULTI_V5
160 select MFD_SYSCON
161 select PLAT_VERSATILE
162 select POWER_RESET
163 select POWER_RESET_VERSATILE
164 select POWER_SUPPLY
165 select SOC_REALVIEW
166 help
167 This enables support for ARM Ltd RealView boards.
168
169if ARCH_REALVIEW
170
171config MACH_REALVIEW_EB
172 bool "Support RealView(R) Emulation Baseboard"
173 select ARM_GIC
174 select CPU_ARM926T if ARCH_MULTI_V5
175 help
176 Include support for the ARM(R) RealView(R) Emulation Baseboard
177 platform. On an ARMv5 kernel, this will include support for
178 the ARM926EJ-S core tile, while on an ARMv6/v7 kernel, at least
179 one of the ARM1136, ARM1176, ARM11MPCore or Cortex-A9MPCore
180 core tile options should be enabled.
181
182config REALVIEW_EB_ARM1136
183 bool "Support ARM1136J(F)-S Tile"
184 depends on MACH_REALVIEW_EB && ARCH_MULTI_V6
185 select CPU_V6
186 help
187 Enable support for the ARM1136 tile fitted to the
188 Realview(R) Emulation Baseboard platform.
189
190config REALVIEW_EB_ARM1176
191 bool "Support ARM1176JZ(F)-S Tile"
192 depends on MACH_REALVIEW_EB && ARCH_MULTI_V6
193 help
194 Enable support for the ARM1176 tile fitted to the
195 Realview(R) Emulation Baseboard platform.
196
197config REALVIEW_EB_A9MP
198 bool "Support Multicore Cortex-A9 Tile"
199 depends on MACH_REALVIEW_EB && ARCH_MULTI_V7
200 help
201 Enable support for the Cortex-A9MPCore tile fitted to the
202 Realview(R) Emulation Baseboard platform.
203
204config REALVIEW_EB_ARM11MP
205 bool "Support ARM11MPCore Tile"
206 depends on MACH_REALVIEW_EB && ARCH_MULTI_V6
207 select HAVE_SMP
208 help
209 Enable support for the ARM11MPCore tile fitted to the Realview(R)
210 Emulation Baseboard platform.
211
212config MACH_REALVIEW_PB11MP
213 bool "Support RealView(R) Platform Baseboard for ARM11MPCore"
214 depends on ARCH_MULTI_V6
215 select HAVE_SMP
216 help
217 Include support for the ARM(R) RealView(R) Platform Baseboard for
218 the ARM11MPCore. This platform has an on-board ARM11MPCore and has
219 support for PCI-E and Compact Flash.
220
221# ARMv6 CPU without K extensions, but does have the new exclusive ops
222config MACH_REALVIEW_PB1176
223 bool "Support RealView(R) Platform Baseboard for ARM1176JZF-S"
224 depends on ARCH_MULTI_V6
225 select CPU_V6
226 select HAVE_TCM
227 help
228 Include support for the ARM(R) RealView(R) Platform Baseboard for
229 ARM1176JZF-S.
230
231config MACH_REALVIEW_PBA8
232 bool "Support RealView(R) Platform Baseboard for Cortex(tm)-A8 platform"
233 depends on ARCH_MULTI_V7
234 help
235 Include support for the ARM(R) RealView Platform Baseboard for
236 Cortex(tm)-A8. This platform has an on-board Cortex-A8 and has
237 support for PCI-E and Compact Flash.
238
239config MACH_REALVIEW_PBX
240 bool "Support RealView(R) Platform Baseboard Explore for Cortex-A9"
241 depends on ARCH_MULTI_V7
242 select ZONE_DMA
243 help
244 Include support for the ARM(R) RealView(R) Platform Baseboard
245 Explore.
246
247endif
248
249menuconfig ARCH_VEXPRESS
250 bool "ARM Ltd. Versatile Express family"
251 depends on ARCH_MULTI_V7
252 select ARM_AMBA
253 select ARM_GIC
254 select ARM_GLOBAL_TIMER
255 select ARM_TIMER_SP804
256 select GPIOLIB
257 select HAVE_ARM_SCU if SMP
258 select HAVE_ARM_TWD if SMP
259 select CLK_ICST
260 select NO_IOPORT_MAP
261 select PLAT_VERSATILE
262 select POWER_RESET
263 select POWER_RESET_VEXPRESS
264 select POWER_SUPPLY
265 select REGULATOR if MMC_ARMMMCI
266 select REGULATOR_FIXED_VOLTAGE if REGULATOR
267 select VEXPRESS_CONFIG
268 help
269 This option enables support for systems using Cortex processor based
270 ARM core and logic (FPGA) tiles on the Versatile Express motherboard,
271 for example:
272
273 - CoreTile Express A5x2 (V2P-CA5s)
274 - CoreTile Express A9x4 (V2P-CA9)
275 - CoreTile Express A15x2 (V2P-CA15)
276 - LogicTile Express 13MG (V2F-2XV6) with A5, A7, A9 or A15 SMMs
277 (Soft Macrocell Models)
278 - Versatile Express RTSMs (Models)
279
280 You must boot using a Flattened Device Tree in order to use these
281 platforms. The traditional (ATAGs) boot method is not usable on
282 these boards with this option.
283
284if ARCH_VEXPRESS
285
286config ARCH_VEXPRESS_CORTEX_A5_A9_ERRATA
287 bool "Enable A5 and A9 only errata work-arounds"
288 default y
289 select ARM_ERRATA_643719 if SMP
290 select ARM_ERRATA_720789
291 select PL310_ERRATA_753970 if CACHE_L2X0
292 help
293 Provides common dependencies for Versatile Express platforms
294 based on Cortex-A5 and Cortex-A9 processors. In order to
295 build a working kernel, you must also enable relevant core
296 tile support or Flattened Device Tree based support options.
297
298config ARCH_VEXPRESS_DCSCB
299 bool "Dual Cluster System Control Block (DCSCB) support"
300 depends on MCPM
301 select ARM_CCI400_PORT_CTRL
302 help
303 Support for the Dual Cluster System Configuration Block (DCSCB).
304 This is needed to provide CPU and cluster power management
305 on RTSM implementing big.LITTLE.
306
307config ARCH_VEXPRESS_SPC
308 bool "Versatile Express Serial Power Controller (SPC)"
309 select PM_OPP
310 help
311 The TC2 (A15x2 A7x3) versatile express core tile integrates a logic
312 block called Serial Power Controller (SPC) that provides the interface
313 between the dual cluster test-chip and the M3 microcontroller that
314 carries out power management.
315
316config ARCH_VEXPRESS_TC2_PM
317 bool "Versatile Express TC2 power management"
318 depends on MCPM
319 select ARM_CCI400_PORT_CTRL
320 select ARCH_VEXPRESS_SPC
321 select ARM_CPU_SUSPEND
322 help
323 Support for CPU and cluster power management on Versatile Express
324 with a TC2 (A15x2 A7x3) big.LITTLE core tile.
325
326endif