xref: /linux/arch/arm64/Kconfig.platforms (revision 6505114e82e7541414b176b5da4a3c015a1214ea)
1# SPDX-License-Identifier: GPL-2.0-only
2menu "Platform selection"
3
4config 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
11config ARCH_AIROHA
12	bool "Airoha SoC Support"
13	select ARM_PSCI
14	select HAVE_ARM_ARCH_TIMER
15	help
16	  This enables support for the ARM64 based Airoha SoCs.
17
18config ARCH_SUNXI
19	bool "Allwinner sunxi 64-bit SoC Family"
20	select ARCH_HAS_RESET_CONTROLLER
21	select PINCTRL
22	select RESET_CONTROLLER
23	select SUN4I_TIMER
24	select SUN6I_R_INTC
25	select SUNXI_NMI_INTC
26	help
27	  This enables support for Allwinner sunxi based SoCs like the A64.
28
29config ARCH_ALPINE
30	bool "Annapurna Labs Alpine platform"
31	select ALPINE_MSI if PCI
32	help
33	  This enables support for the Annapurna Labs Alpine
34	  Soc family.
35
36config ARCH_APPLE
37	bool "Apple Silicon SoC family"
38	select APPLE_AIC
39	select APPLE_PMGR_PWRSTATE if PM
40	help
41	  This enables support for Apple's in-house ARM SoC family, such
42	  as the Apple M1.
43
44config ARCH_ARTPEC
45	bool "Axis Communications ARTPEC SoC Family"
46	depends on ARCH_EXYNOS
47	select ARM_GIC
48	help
49	   This enables support for the ARMv8 based ARTPEC SoC Family.
50
51config ARCH_ASPEED
52	bool "Aspeed SoC family"
53	help
54	  This enables support for ASPEED's SoC family, such as the
55	  ast27XX 8th generation Baseboard Management Controller (BMC).
56
57config ARCH_AXIADO
58	bool "Axiado SoC Family"
59	select GPIOLIB
60	help
61	  This enables support for Axiado SoC family like AX3000
62
63menuconfig ARCH_BCM
64	bool "Broadcom SoC Support"
65
66if ARCH_BCM
67
68config ARCH_BCM2835
69	bool "Broadcom BCM2835 family"
70	select TIMER_OF
71	select GPIOLIB
72	select MFD_CORE
73	select PINCTRL
74	select PINCTRL_BCM2835
75	select ARM_AMBA
76	select ARM_GIC
77	select ARM_TIMER_SP804
78	help
79	  This enables support for the Broadcom BCM2837 and BCM2711 SoC.
80	  These SoCs are used in the Raspberry Pi 3 and 4 devices.
81
82config ARCH_BCM_IPROC
83	bool "Broadcom iProc SoC Family"
84	select COMMON_CLK_IPROC
85	select GPIOLIB
86	select PINCTRL
87	help
88	  This enables support for Broadcom iProc based SoCs
89
90config ARCH_BCMBCA
91	bool "Broadcom Broadband Carrier Access (BCA) origin SoC"
92	select GPIOLIB
93	help
94	  Say Y if you intend to run the kernel on a Broadcom Broadband ARM-based
95	  BCA chipset.
96
97	  This enables support for Broadcom BCA ARM-based broadband chipsets,
98	  including the DSL, PON and Wireless family of chips.
99
100config ARCH_BRCMSTB
101	bool "Broadcom Set-Top-Box SoCs"
102	select ARCH_HAS_RESET_CONTROLLER
103	select GENERIC_IRQ_CHIP
104	select PINCTRL
105	help
106	  This enables support for Broadcom's ARMv8 Set Top Box SoCs
107
108endif
109
110config ARCH_BERLIN
111	bool "Marvell Berlin SoC Family"
112	select DW_APB_ICTL
113	select DW_APB_TIMER_OF
114	select GPIOLIB
115	select PINCTRL
116	help
117	  This enables support for Marvell Berlin SoC Family
118
119config ARCH_BITMAIN
120	bool "Bitmain SoC Platforms"
121	help
122	  This enables support for the Bitmain SoC Family.
123
124config ARCH_BLAIZE
125	bool "Blaize SoC Platforms"
126	help
127	  This enables support for the Blaize SoC family
128
129config ARCH_BST
130	bool "Black Sesame Technologies SoC Family"
131	help
132	  This enables support for Black Sesame Technologies (BST) SoC family.
133	  BST produces automotive-grade system-on-chips for intelligent driving,
134	  focusing on computer vision and AI capabilities. The BST C1200 family
135	  includes SoCs for ADAS and autonomous driving applications.
136
137config ARCH_CIX
138	bool "Cixtech SoC family"
139	help
140	  This enables support for the Cixtech SoC family,
141	  like P1(sky1).
142
143config ARCH_EXYNOS
144	bool "Samsung Exynos SoC family"
145	select COMMON_CLK_SAMSUNG
146	select CLKSRC_EXYNOS_MCT
147	select EXYNOS_PM_DOMAINS if PM_GENERIC_DOMAINS
148	select EXYNOS_PMU
149	select PINCTRL
150	select PINCTRL_EXYNOS
151	select PM_GENERIC_DOMAINS if PM
152	select SOC_SAMSUNG
153	help
154	  This enables support for ARMv8 based Samsung Exynos SoC family.
155
156config ARCH_K3
157	bool "Texas Instruments Inc. K3 multicore SoC architecture"
158	select SOC_TI
159	select TI_K3_SOCINFO
160	help
161	  This enables support for Texas Instruments' K3 multicore SoC
162	  architecture.
163
164config ARCH_LG1K
165	bool "LG Electronics LG1K SoC Family"
166	help
167	  This enables support for LG Electronics LG1K SoC Family
168
169config ARCH_HISI
170	bool "Hisilicon SoC Family"
171	select ARM_TIMER_SP804
172	select HISILICON_IRQ_MBIGEN if PCI
173	select PINCTRL
174	help
175	  This enables support for Hisilicon ARMv8 SoC family
176
177config ARCH_KEEMBAY
178	bool "Keem Bay SoC"
179	help
180	  This enables support for Intel Movidius SoC code-named Keem Bay.
181
182config ARCH_MEDIATEK
183	bool "MediaTek SoC Family"
184	select ARM_GIC
185	select PINCTRL
186	select MTK_TIMER
187	help
188	  This enables support for MediaTek MT27xx, MT65xx, MT76xx
189	  & MT81xx ARMv8 SoCs
190
191config ARCH_MESON
192	bool "Amlogic Platforms"
193	help
194	  This enables support for the arm64 based Amlogic SoCs
195	  such as the s905, S905X/D, S912, A113X/D or S905X/D2
196
197menuconfig ARCH_MICROCHIP
198	bool "Microchip SoC support"
199
200if ARCH_MICROCHIP
201
202config ARCH_LAN969X
203	bool "Microchip LAN969X SoC family"
204	select PINCTRL
205	select DW_APB_TIMER_OF
206	help
207	  This enables support for the Microchip LAN969X ARMv8-based
208	  SoC family of TSN-capable gigabit switches.
209
210	  The LAN969X Ethernet switch family provides a rich set of
211	  switching features such as advanced TCAM-based VLAN and QoS
212	  processing enabling delivery of differentiated services, and
213	  security through TCAM-based frame processing using versatile
214	  content aware processor (VCAP).
215
216config ARCH_SPARX5
217	bool "Microchip Sparx5 SoC family"
218	select PINCTRL
219	select DW_APB_TIMER_OF
220	help
221	  This enables support for the Microchip Sparx5 ARMv8-based
222	  SoC family of TSN-capable gigabit switches.
223
224	  The SparX-5 Ethernet switch family provides a rich set of
225	  switching features such as advanced TCAM-based VLAN and QoS
226	  processing enabling delivery of differentiated services, and
227	  security through TCAM-based frame processing using versatile
228	  content aware processor (VCAP).
229
230endif
231
232config ARCH_MMP
233	bool "Marvell MMP SoC Family"
234	select PINCTRL
235	select PINCTRL_SINGLE
236	help
237	  This enables support for Marvell MMP SoC family, currently
238	  supporting PXA1908 aka IAP140.
239
240config ARCH_MVEBU
241	bool "Marvell EBU SoC Family"
242	select ARMADA_AP806_SYSCON
243	select ARMADA_CP110_SYSCON
244	select ARMADA_37XX_CLK
245	select GPIOLIB
246	select GPIOLIB_IRQCHIP
247	select MVEBU_GICP
248	select MVEBU_ICU
249	select MVEBU_ODMI
250	select MVEBU_PIC
251	select MVEBU_SEI
252	select PINCTRL
253	select PINCTRL_ARMADA_37XX
254	select PINCTRL_ARMADA_AP806
255	select PINCTRL_ARMADA_CP110
256	select PINCTRL_AC5
257	help
258	  This enables support for Marvell EBU family, including:
259	   - Armada 3700 SoC Family
260	   - Armada 7K SoC Family
261	   - Armada 8K SoC Family
262	   - 98DX2530 SoC Family
263
264menuconfig ARCH_NXP
265	bool "NXP SoC support"
266
267if ARCH_NXP
268
269config ARCH_LAYERSCAPE
270	bool "Freescale Layerscape SoC family"
271	help
272	  This enables support for the Freescale Layerscape SoC family.
273
274config ARCH_MXC
275	bool "NXP i.MX SoC family"
276	select ARM64_ERRATUM_843419
277	select ARM64_ERRATUM_845719 if COMPAT
278	select IMX_GPCV2
279	select IMX_GPCV2_PM_DOMAINS
280	select PM
281	select PM_GENERIC_DOMAINS
282	select SOC_BUS
283	select TIMER_IMX_SYS_CTR
284	help
285	  This enables support for the ARMv8 based SoCs in the
286	  NXP i.MX family.
287
288config ARCH_S32
289	bool "NXP S32 SoC Family"
290	help
291	  This enables support for the NXP S32 family of processors.
292
293endif
294
295config ARCH_MA35
296	bool "Nuvoton MA35 Architecture"
297	select GPIOLIB
298	select PINCTRL
299	select RESET_CONTROLLER
300	help
301	  This enables support for the ARMv8 based Nuvoton MA35 series SoCs.
302
303config ARCH_NPCM
304	bool "Nuvoton NPCM Architecture"
305	select PINCTRL
306	select GPIOLIB
307	select NPCM7XX_TIMER
308	select RESET_CONTROLLER
309	select MFD_SYSCON
310	help
311	  General support for NPCM8xx BMC (Arbel).
312	  Nuvoton NPCM8xx BMC based on the Cortex A35.
313
314config ARCH_PENSANDO
315	bool "AMD Pensando Platforms"
316	help
317	  This enables support for the ARMv8 based AMD Pensando SoC
318	  family to include the Elba SoC.
319
320	  AMD Pensando SoCs support a range of Distributed Services
321	  Cards in PCIe format installed into servers.  The Elba
322	  SoC includes 16 Cortex A-72 CPU cores, 144 P4-programmable
323	  cores for a minimal latency/jitter datapath, and network
324	  interfaces up to 200 Gb/s.
325
326config ARCH_QCOM
327	bool "Qualcomm Platforms"
328	select GPIOLIB
329	select PINCTRL
330	select HAVE_PWRCTRL if PCI
331	select HAVE_SHARED_GPIOS
332	help
333	  This enables support for the ARMv8 based Qualcomm chipsets.
334
335config ARCH_REALTEK
336	bool "Realtek Platforms"
337	select RESET_CONTROLLER
338	help
339	  This enables support for the ARMv8 based Realtek chipsets,
340	  like the RTD1295.
341
342config ARCH_RENESAS
343	bool "Renesas SoC Platforms"
344	help
345	  This enables support for the ARMv8 based Renesas SoCs.
346
347config ARCH_ROCKCHIP
348	bool "Rockchip Platforms"
349	select ARCH_HAS_RESET_CONTROLLER
350	select PINCTRL
351	select PM
352	select ROCKCHIP_TIMER
353	help
354	  This enables support for the ARMv8 based Rockchip chipsets,
355	  like the RK3368.
356
357config ARCH_SEATTLE
358	bool "AMD Seattle SoC Family"
359	help
360	  This enables support for AMD Seattle SOC Family
361
362config ARCH_INTEL_SOCFPGA
363	bool "Intel's SoCFPGA ARMv8 Families"
364	help
365	  This enables support for Intel's SoCFPGA ARMv8 families:
366	  Stratix 10 (ex. Altera), Stratix10 Software Virtual Platform,
367	  Agilex and eASIC N5X.
368
369config ARCH_SOPHGO
370	bool "Sophgo SoCs"
371	select ARCH_HAS_RESET_CONTROLLER
372	help
373	  This enables support for Sophgo SoC platform hardware.
374
375config ARCH_STM32
376	bool "STMicroelectronics STM32 SoC Family"
377	select GPIOLIB
378	select PINCTRL
379	select ARM_SCMI_PROTOCOL
380	select REGULATOR
381	select REGULATOR_ARM_SCMI
382	select COMMON_CLK_SCMI
383	select STM32_FIREWALL
384	help
385	  This enables support for ARMv8 based STMicroelectronics
386	  STM32 family, including:
387		- STM32MP21:
388			- STM32MP211, STM32MP213, STM32MP215.
389		- STM32MP23:
390			- STM32MP231, STM32MP233, STM32MP235.
391		- STM32MP25:
392			- STM32MP251, STM32MP253, STM32MP255 and STM32MP257.
393
394config ARCH_SYNQUACER
395	bool "Socionext SynQuacer SoC Family"
396	select IRQ_FASTEOI_HIERARCHY_HANDLERS
397
398config ARCH_TEGRA
399	bool "NVIDIA Tegra SoC Family"
400	select ARCH_HAS_RESET_CONTROLLER
401	select ARM_GIC_PM
402	select CLKSRC_MMIO
403	select TIMER_OF
404	select GPIOLIB
405	select PINCTRL
406	select PM
407	select PM_GENERIC_DOMAINS
408	select RESET_CONTROLLER
409	help
410	  This enables support for the NVIDIA Tegra SoC family.
411
412config ARCH_TESLA_FSD
413	bool "Tesla platform"
414	depends on ARCH_EXYNOS
415	help
416	  Support for ARMv8 based Tesla platforms.
417
418config ARCH_SPRD
419	bool "Spreadtrum SoC platform"
420	help
421	  Support for Spreadtrum ARM based SoCs
422
423config ARCH_THUNDER
424	bool "Cavium Inc. Thunder SoC Family"
425	help
426	  This enables support for Cavium's Thunder Family of SoCs.
427
428config ARCH_THUNDER2
429	bool "Cavium ThunderX2 Server Processors"
430	select GPIOLIB
431	help
432	  This enables support for Cavium's ThunderX2 CN99XX family of
433	  server processors.
434
435config ARCH_UNIPHIER
436	bool "Socionext UniPhier SoC Family"
437	select ARCH_HAS_RESET_CONTROLLER
438	select PINCTRL
439	select RESET_CONTROLLER
440	help
441	  This enables support for Socionext UniPhier SoC family.
442
443config ARCH_VEXPRESS
444	bool "ARM Ltd Platforms"
445	select GPIOLIB
446	select PM
447	select PM_GENERIC_DOMAINS
448	help
449	  This enables support for the ARM Ltd Platforms.
450
451config ARCH_VISCONTI
452	bool "Toshiba Visconti SoC Family"
453	select PINCTRL
454	select PINCTRL_VISCONTI
455	help
456	  This enables support for Toshiba Visconti SoCs Family.
457
458config ARCH_XGENE
459	bool "AppliedMicro X-Gene SOC Family"
460	help
461	  This enables support for AppliedMicro X-Gene SOC Family
462
463config ARCH_ZYNQMP
464	bool "Xilinx ZynqMP Family"
465	help
466	  This enables support for Xilinx ZynqMP Family
467
468endmenu # "Platform selection"
469