Merge tag 'trace-printf-v6.13' of git://git.kernel.org/pub/scm/linux/kernel/git/trace...
[drm/drm-misc.git] / arch / arm / mach-versatile / Kconfig
blob51361807844015321191c158b27d259f647b80b4
1 # SPDX-License-Identifier: GPL-2.0
2 config 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.
20 menuconfig 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.
39 if ARCH_INTEGRATOR
41 config 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.
51 config 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.
64 config INTEGRATOR_CM720T
65         bool "Integrator/CM720T core module"
66         depends on ARCH_INTEGRATOR_AP
67         depends on ARCH_MULTI_V4T
68         select CPU_ARM720T
70 config INTEGRATOR_CM920T
71         bool "Integrator/CM920T core module"
72         depends on ARCH_INTEGRATOR_AP
73         depends on ARCH_MULTI_V4T
74         select CPU_ARM920T
76 config 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
82 config 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
88 config 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
94 config 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
100 config INTEGRATOR_CM10220E
101         bool "Integrator/CM10220E core module"
102         depends on ARCH_INTEGRATOR_AP
103         depends on ARCH_MULTI_V5
104         select CPU_ARM1022
106 config 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
112 config 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
118 config 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.
128 config 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
134 config 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
140 config ARCH_CINTEGRATOR
141         depends on ARCH_INTEGRATOR_CP
142         def_bool y
144 endif
146 menuconfig 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.
169 if ARCH_REALVIEW
171 config 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.
182 config 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.
190 config 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.
197 config 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.
204 # ARMv6 CPU without K extensions, but does have the new exclusive ops
205 config MACH_REALVIEW_PB1176
206         bool "Support RealView(R) Platform Baseboard for ARM1176JZF-S"
207         depends on ARCH_MULTI_V6
208         select CPU_V6
209         select HAVE_TCM
210         help
211           Include support for the ARM(R) RealView(R) Platform Baseboard for
212           ARM1176JZF-S.
214 config MACH_REALVIEW_PBA8
215         bool "Support RealView(R) Platform Baseboard for Cortex(tm)-A8 platform"
216         depends on ARCH_MULTI_V7
217         help
218           Include support for the ARM(R) RealView Platform Baseboard for
219           Cortex(tm)-A8.  This platform has an on-board Cortex-A8 and has
220           support for PCI-E and Compact Flash.
222 config MACH_REALVIEW_PBX
223         bool "Support RealView(R) Platform Baseboard Explore for Cortex-A9"
224         depends on ARCH_MULTI_V7
225         select ZONE_DMA
226         help
227           Include support for the ARM(R) RealView(R) Platform Baseboard
228           Explore.
230 endif
232 menuconfig ARCH_VEXPRESS
233         bool "ARM Ltd. Versatile Express family"
234         depends on ARCH_MULTI_V7
235         select ARM_AMBA
236         select ARM_GIC
237         select ARM_GLOBAL_TIMER
238         select ARM_TIMER_SP804
239         select GPIOLIB
240         select HAVE_ARM_SCU if SMP
241         select HAVE_ARM_TWD if SMP
242         select CLK_ICST
243         select NO_IOPORT_MAP
244         select PLAT_VERSATILE
245         select POWER_RESET
246         select POWER_RESET_VEXPRESS
247         select POWER_SUPPLY
248         select REGULATOR if MMC_ARMMMCI
249         select REGULATOR_FIXED_VOLTAGE if REGULATOR
250         select VEXPRESS_CONFIG
251         help
252           This option enables support for systems using Cortex processor based
253           ARM core and logic (FPGA) tiles on the Versatile Express motherboard,
254           for example:
256           - CoreTile Express A5x2 (V2P-CA5s)
257           - CoreTile Express A9x4 (V2P-CA9)
258           - CoreTile Express A15x2 (V2P-CA15)
259           - LogicTile Express 13MG (V2F-2XV6) with A5, A7, A9 or A15 SMMs
260             (Soft Macrocell Models)
261           - Versatile Express RTSMs (Models)
263           You must boot using a Flattened Device Tree in order to use these
264           platforms. The traditional (ATAGs) boot method is not usable on
265           these boards with this option.
267 if ARCH_VEXPRESS
269 config ARCH_VEXPRESS_CORTEX_A5_A9_ERRATA
270         bool "Enable A5 and A9 only errata work-arounds"
271         default y
272         select ARM_ERRATA_643719 if SMP
273         select ARM_ERRATA_720789
274         select PL310_ERRATA_753970 if CACHE_L2X0
275         help
276           Provides common dependencies for Versatile Express platforms
277           based on Cortex-A5 and Cortex-A9 processors. In order to
278           build a working kernel, you must also enable relevant core
279           tile support or Flattened Device Tree based support options.
281 config ARCH_VEXPRESS_SPC
282         bool "Versatile Express Serial Power Controller (SPC)"
283         select PM_OPP
284         help
285           The TC2 (A15x2 A7x3) versatile express core tile integrates a logic
286           block called Serial Power Controller (SPC) that provides the interface
287           between the dual cluster test-chip and the M3 microcontroller that
288           carries out power management.
290 config ARCH_VEXPRESS_TC2_PM
291         bool "Versatile Express TC2 power management"
292         depends on MCPM
293         select ARM_CCI400_PORT_CTRL
294         select ARCH_VEXPRESS_SPC
295         select ARM_CPU_SUSPEND
296         help
297           Support for CPU and cluster power management on Versatile Express
298           with a TC2 (A15x2 A7x3) big.LITTLE core tile.
300 endif