GNU Linux-libre 6.7.9-gnu
[releases.git] / arch / arm64 / Kconfig.platforms
1 # SPDX-License-Identifier: GPL-2.0-only
2 menu "Platform selection"
3
4 config ARCH_ACTIONS
5         bool "Actions Semi Platforms"
6         select OWL_TIMER
7         select PINCTRL
8         help
9           This enables support for the Actions Semiconductor S900 SoC family.
10
11 config ARCH_SUNXI
12         bool "Allwinner sunxi 64-bit SoC Family"
13         select ARCH_HAS_RESET_CONTROLLER
14         select PINCTRL
15         select RESET_CONTROLLER
16         select SUN4I_TIMER
17         select SUN6I_R_INTC
18         select SUNXI_NMI_INTC
19         help
20           This enables support for Allwinner sunxi based SoCs like the A64.
21
22 config ARCH_ALPINE
23         bool "Annapurna Labs Alpine platform"
24         select ALPINE_MSI if PCI
25         help
26           This enables support for the Annapurna Labs Alpine
27           Soc family.
28
29 config ARCH_APPLE
30         bool "Apple Silicon SoC family"
31         select APPLE_AIC
32         help
33           This enables support for Apple's in-house ARM SoC family, starting
34           with the Apple M1.
35
36 menuconfig ARCH_BCM
37         bool "Broadcom SoC Support"
38
39 if ARCH_BCM
40
41 config ARCH_BCM2835
42         bool "Broadcom BCM2835 family"
43         select TIMER_OF
44         select GPIOLIB
45         select MFD_CORE
46         select PINCTRL
47         select PINCTRL_BCM2835
48         select ARM_AMBA
49         select ARM_GIC
50         select ARM_TIMER_SP804
51         help
52           This enables support for the Broadcom BCM2837 and BCM2711 SoC.
53           These SoCs are used in the Raspberry Pi 3 and 4 devices.
54
55 config ARCH_BCM_IPROC
56         bool "Broadcom iProc SoC Family"
57         select COMMON_CLK_IPROC
58         select GPIOLIB
59         select PINCTRL
60         help
61           This enables support for Broadcom iProc based SoCs
62
63 config ARCH_BCMBCA
64         bool "Broadcom Broadband Carrier Access (BCA) origin SoC"
65         select GPIOLIB
66         help
67           Say Y if you intend to run the kernel on a Broadcom Broadband ARM-based
68           BCA chipset.
69
70           This enables support for Broadcom BCA ARM-based broadband chipsets,
71           including the DSL, PON and Wireless family of chips.
72
73 config ARCH_BRCMSTB
74         bool "Broadcom Set-Top-Box SoCs"
75         select ARCH_HAS_RESET_CONTROLLER
76         select GENERIC_IRQ_CHIP
77         select PINCTRL
78         help
79           This enables support for Broadcom's ARMv8 Set Top Box SoCs
80
81 endif
82
83 config ARCH_BERLIN
84         bool "Marvell Berlin SoC Family"
85         select DW_APB_ICTL
86         select DW_APB_TIMER_OF
87         select GPIOLIB
88         select PINCTRL
89         help
90           This enables support for Marvell Berlin SoC Family
91
92 config ARCH_BITMAIN
93         bool "Bitmain SoC Platforms"
94         help
95           This enables support for the Bitmain SoC Family.
96
97 config ARCH_EXYNOS
98         bool "Samsung Exynos SoC family"
99         select COMMON_CLK_SAMSUNG
100         select CLKSRC_EXYNOS_MCT
101         select EXYNOS_PM_DOMAINS if PM_GENERIC_DOMAINS
102         select EXYNOS_PMU
103         select PINCTRL
104         select PINCTRL_EXYNOS
105         select PM_GENERIC_DOMAINS if PM
106         select SOC_SAMSUNG
107         help
108           This enables support for ARMv8 based Samsung Exynos SoC family.
109
110 config ARCH_SPARX5
111         bool "Microchip Sparx5 SoC family"
112         select PINCTRL
113         select DW_APB_TIMER_OF
114         help
115           This enables support for the Microchip Sparx5 ARMv8-based
116           SoC family of TSN-capable gigabit switches.
117
118           The SparX-5 Ethernet switch family provides a rich set of
119           switching features such as advanced TCAM-based VLAN and QoS
120           processing enabling delivery of differentiated services, and
121           security through TCAM-based frame processing using versatile
122           content aware processor (VCAP).
123
124 config ARCH_K3
125         bool "Texas Instruments Inc. K3 multicore SoC architecture"
126         select PM_GENERIC_DOMAINS if PM
127         select MAILBOX
128         select SOC_TI
129         select TI_MESSAGE_MANAGER
130         select TI_SCI_PROTOCOL
131         select TI_SCI_INTR_IRQCHIP
132         select TI_SCI_INTA_IRQCHIP
133         select TI_K3_SOCINFO
134         help
135           This enables support for Texas Instruments' K3 multicore SoC
136           architecture.
137
138 config ARCH_LG1K
139         bool "LG Electronics LG1K SoC Family"
140         help
141           This enables support for LG Electronics LG1K SoC Family
142
143 config ARCH_HISI
144         bool "Hisilicon SoC Family"
145         select ARM_TIMER_SP804
146         select HISILICON_IRQ_MBIGEN if PCI
147         select PINCTRL
148         help
149           This enables support for Hisilicon ARMv8 SoC family
150
151 config ARCH_KEEMBAY
152         bool "Keem Bay SoC"
153         help
154           This enables support for Intel Movidius SoC code-named Keem Bay.
155
156 config ARCH_MEDIATEK
157         bool "MediaTek SoC Family"
158         select ARM_GIC
159         select PINCTRL
160         select MTK_TIMER
161         help
162           This enables support for MediaTek MT27xx, MT65xx, MT76xx
163           & MT81xx ARMv8 SoCs
164
165 config ARCH_MESON
166         bool "Amlogic Platforms"
167         help
168           This enables support for the arm64 based Amlogic SoCs
169           such as the s905, S905X/D, S912, A113X/D or S905X/D2
170
171 config ARCH_MVEBU
172         bool "Marvell EBU SoC Family"
173         select ARMADA_AP806_SYSCON
174         select ARMADA_CP110_SYSCON
175         select ARMADA_37XX_CLK
176         select GPIOLIB
177         select GPIOLIB_IRQCHIP
178         select MVEBU_GICP
179         select MVEBU_ICU
180         select MVEBU_ODMI
181         select MVEBU_PIC
182         select MVEBU_SEI
183         select OF_GPIO
184         select PINCTRL
185         select PINCTRL_ARMADA_37XX
186         select PINCTRL_ARMADA_AP806
187         select PINCTRL_ARMADA_CP110
188         select PINCTRL_AC5
189         help
190           This enables support for Marvell EBU family, including:
191            - Armada 3700 SoC Family
192            - Armada 7K SoC Family
193            - Armada 8K SoC Family
194            - 98DX2530 SoC Family
195
196 menuconfig ARCH_NXP
197         bool "NXP SoC support"
198
199 if ARCH_NXP
200
201 config ARCH_LAYERSCAPE
202         bool "Freescale Layerscape SoC family"
203         select EDAC_SUPPORT
204         help
205           This enables support for the Freescale Layerscape SoC family.
206
207 config ARCH_MXC
208         bool "NXP i.MX SoC family"
209         select ARM64_ERRATUM_843419
210         select ARM64_ERRATUM_845719 if COMPAT
211         select IMX_GPCV2
212         select IMX_GPCV2_PM_DOMAINS
213         select PM
214         select PM_GENERIC_DOMAINS
215         select SOC_BUS
216         select TIMER_IMX_SYS_CTR
217         help
218           This enables support for the ARMv8 based SoCs in the
219           NXP i.MX family.
220
221 config ARCH_S32
222         bool "NXP S32 SoC Family"
223         help
224           This enables support for the NXP S32 family of processors.
225
226 endif
227
228 config ARCH_MA35
229         bool "Nuvoton MA35 Architecture"
230         select GPIOLIB
231         select PINCTRL
232         select RESET_CONTROLLER
233         help
234           This enables support for the ARMv8 based Nuvoton MA35 series SoCs.
235
236 config ARCH_NPCM
237         bool "Nuvoton NPCM Architecture"
238         select PINCTRL
239         select GPIOLIB
240         select NPCM7XX_TIMER
241         select RESET_CONTROLLER
242         select MFD_SYSCON
243         help
244           General support for NPCM8xx BMC (Arbel).
245           Nuvoton NPCM8xx BMC based on the Cortex A35.
246
247 config ARCH_PENSANDO
248         bool "AMD Pensando Platforms"
249         help
250           This enables support for the ARMv8 based AMD Pensando SoC
251           family to include the Elba SoC.
252
253           AMD Pensando SoCs support a range of Distributed Services
254           Cards in PCIe format installed into servers.  The Elba
255           SoC includes 16 Cortex A-72 CPU cores, 144 P4-programmable
256           cores for a minimal latency/jitter datapath, and network
257           interfaces up to 200 Gb/s.
258
259 config ARCH_QCOM
260         bool "Qualcomm Platforms"
261         select GPIOLIB
262         select PINCTRL
263         help
264           This enables support for the ARMv8 based Qualcomm chipsets.
265
266 config ARCH_REALTEK
267         bool "Realtek Platforms"
268         select RESET_CONTROLLER
269         help
270           This enables support for the ARMv8 based Realtek chipsets,
271           like the RTD1295.
272
273 config ARCH_RENESAS
274         bool "Renesas SoC Platforms"
275         help
276           This enables support for the ARMv8 based Renesas SoCs.
277
278 config ARCH_ROCKCHIP
279         bool "Rockchip Platforms"
280         select ARCH_HAS_RESET_CONTROLLER
281         select PINCTRL
282         select PM
283         select ROCKCHIP_TIMER
284         help
285           This enables support for the ARMv8 based Rockchip chipsets,
286           like the RK3368.
287
288 config ARCH_SEATTLE
289         bool "AMD Seattle SoC Family"
290         help
291           This enables support for AMD Seattle SOC Family
292
293 config ARCH_INTEL_SOCFPGA
294         bool "Intel's SoCFPGA ARMv8 Families"
295         help
296           This enables support for Intel's SoCFPGA ARMv8 families:
297           Stratix 10 (ex. Altera), Stratix10 Software Virtual Platform,
298           Agilex and eASIC N5X.
299
300 config ARCH_STM32
301         bool "STMicroelectronics STM32 SoC Family"
302         select GPIOLIB
303         select PINCTRL
304         select PINCTRL_STM32MP257
305         select ARM_SMC_MBOX
306         select ARM_SCMI_PROTOCOL
307         select COMMON_CLK_SCMI
308         help
309           This enables support for ARMv8 based STMicroelectronics
310           STM32 family, including:
311                 - STM32MP25:
312                         - STM32MP251, STM32MP253, STM32MP255 and STM32MP257.
313
314 config ARCH_SYNQUACER
315         bool "Socionext SynQuacer SoC Family"
316         select IRQ_FASTEOI_HIERARCHY_HANDLERS
317
318 config ARCH_TEGRA
319         bool "NVIDIA Tegra SoC Family"
320         select ARCH_HAS_RESET_CONTROLLER
321         select ARM_GIC_PM
322         select CLKSRC_MMIO
323         select TIMER_OF
324         select GPIOLIB
325         select PINCTRL
326         select PM
327         select PM_GENERIC_DOMAINS
328         select RESET_CONTROLLER
329         help
330           This enables support for the NVIDIA Tegra SoC family.
331
332 config ARCH_TESLA_FSD
333         bool "Tesla platform"
334         depends on ARCH_EXYNOS
335         help
336           Support for ARMv8 based Tesla platforms.
337
338 config ARCH_SPRD
339         bool "Spreadtrum SoC platform"
340         help
341           Support for Spreadtrum ARM based SoCs
342
343 config ARCH_THUNDER
344         bool "Cavium Inc. Thunder SoC Family"
345         help
346           This enables support for Cavium's Thunder Family of SoCs.
347
348 config ARCH_THUNDER2
349         bool "Cavium ThunderX2 Server Processors"
350         select GPIOLIB
351         help
352           This enables support for Cavium's ThunderX2 CN99XX family of
353           server processors.
354
355 config ARCH_UNIPHIER
356         bool "Socionext UniPhier SoC Family"
357         select ARCH_HAS_RESET_CONTROLLER
358         select PINCTRL
359         select RESET_CONTROLLER
360         help
361           This enables support for Socionext UniPhier SoC family.
362
363 config ARCH_VEXPRESS
364         bool "ARMv8 software model (Versatile Express)"
365         select GPIOLIB
366         select PM
367         select PM_GENERIC_DOMAINS
368         help
369           This enables support for the ARMv8 software model (Versatile
370           Express).
371
372 config ARCH_VISCONTI
373         bool "Toshiba Visconti SoC Family"
374         select PINCTRL
375         select PINCTRL_VISCONTI
376         help
377           This enables support for Toshiba Visconti SoCs Family.
378
379 config ARCH_XGENE
380         bool "AppliedMicro X-Gene SOC Family"
381         help
382           This enables support for AppliedMicro X-Gene SOC Family
383
384 config ARCH_ZYNQMP
385         bool "Xilinx ZynqMP Family"
386         help
387           This enables support for Xilinx ZynqMP Family
388
389 endmenu # "Platform selection"