xref: /linux/arch/arm64/Kconfig.platforms (revision cf3df78629f24b40cd0cb2da74e3ea4a944bed82)
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_GOOGLE
157	bool "Google-Designed SoC family"
158	help
159	  This enables support for Google Tensor SoCs starting at the
160	  Google Tensor G5 (Laguna) found in Pixel 10 and later phones.
161	  Tensor G1 to G4 are offshoots of the Exynos family and are
162	  enabled via ARCH_EXYNOS.
163
164config ARCH_K3
165	bool "Texas Instruments Inc. K3 multicore SoC architecture"
166	select SOC_TI
167	select TI_K3_SOCINFO
168	help
169	  This enables support for Texas Instruments' K3 multicore SoC
170	  architecture.
171
172config ARCH_LG1K
173	bool "LG Electronics LG1K SoC Family"
174	help
175	  This enables support for LG Electronics LG1K SoC Family
176
177config ARCH_HISI
178	bool "Hisilicon SoC Family"
179	select ARM_TIMER_SP804
180	select HISILICON_IRQ_MBIGEN if PCI
181	select PINCTRL
182	help
183	  This enables support for Hisilicon ARMv8 SoC family
184
185config ARCH_KEEMBAY
186	bool "Keem Bay SoC"
187	help
188	  This enables support for Intel Movidius SoC code-named Keem Bay.
189
190config ARCH_MEDIATEK
191	bool "MediaTek SoC Family"
192	select ARM_GIC
193	select PINCTRL
194	select MTK_TIMER
195	help
196	  This enables support for MediaTek MT27xx, MT65xx, MT76xx
197	  & MT81xx ARMv8 SoCs
198
199config ARCH_MESON
200	bool "Amlogic Platforms"
201	help
202	  This enables support for the arm64 based Amlogic SoCs
203	  such as the s905, S905X/D, S912, A113X/D or S905X/D2
204
205menuconfig ARCH_MICROCHIP
206	bool "Microchip SoC support"
207
208if ARCH_MICROCHIP
209
210config ARCH_LAN969X
211	bool "Microchip LAN969X SoC family"
212	select PINCTRL
213	select DW_APB_TIMER_OF
214	help
215	  This enables support for the Microchip LAN969X ARMv8-based
216	  SoC family of TSN-capable gigabit switches.
217
218	  The LAN969X Ethernet switch family provides a rich set of
219	  switching features such as advanced TCAM-based VLAN and QoS
220	  processing enabling delivery of differentiated services, and
221	  security through TCAM-based frame processing using versatile
222	  content aware processor (VCAP).
223
224config ARCH_SPARX5
225	bool "Microchip Sparx5 SoC family"
226	select PINCTRL
227	select DW_APB_TIMER_OF
228	help
229	  This enables support for the Microchip Sparx5 ARMv8-based
230	  SoC family of TSN-capable gigabit switches.
231
232	  The SparX-5 Ethernet switch family provides a rich set of
233	  switching features such as advanced TCAM-based VLAN and QoS
234	  processing enabling delivery of differentiated services, and
235	  security through TCAM-based frame processing using versatile
236	  content aware processor (VCAP).
237
238endif
239
240config ARCH_MMP
241	bool "Marvell MMP SoC Family"
242	select PINCTRL
243	select PINCTRL_SINGLE
244	help
245	  This enables support for Marvell MMP SoC family, currently
246	  supporting PXA1908 aka IAP140.
247
248config ARCH_MVEBU
249	bool "Marvell EBU SoC Family"
250	select ARMADA_AP806_SYSCON
251	select ARMADA_CP110_SYSCON
252	select ARMADA_37XX_CLK
253	select GPIOLIB
254	select GPIOLIB_IRQCHIP
255	select MVEBU_GICP
256	select MVEBU_ICU
257	select MVEBU_ODMI
258	select MVEBU_PIC
259	select MVEBU_SEI
260	select PINCTRL
261	select PINCTRL_ARMADA_37XX
262	select PINCTRL_ARMADA_AP806
263	select PINCTRL_ARMADA_CP110
264	select PINCTRL_AC5
265	help
266	  This enables support for Marvell EBU family, including:
267	   - Armada 3700 SoC Family
268	   - Armada 7K SoC Family
269	   - Armada 8K SoC Family
270	   - 98DX2530 SoC Family
271
272menuconfig ARCH_NXP
273	bool "NXP SoC support"
274
275if ARCH_NXP
276
277config ARCH_LAYERSCAPE
278	bool "Freescale Layerscape SoC family"
279	help
280	  This enables support for the Freescale Layerscape SoC family.
281
282config ARCH_MXC
283	bool "NXP i.MX SoC family"
284	select ARM64_ERRATUM_843419
285	select ARM64_ERRATUM_845719 if COMPAT
286	select IMX_GPCV2
287	select IMX_GPCV2_PM_DOMAINS
288	select PM
289	select PM_GENERIC_DOMAINS
290	select SOC_BUS
291	select TIMER_IMX_SYS_CTR
292	help
293	  This enables support for the ARMv8 based SoCs in the
294	  NXP i.MX family.
295
296config ARCH_S32
297	bool "NXP S32 SoC Family"
298	help
299	  This enables support for the NXP S32 family of processors.
300
301endif
302
303config ARCH_MA35
304	bool "Nuvoton MA35 Architecture"
305	select GPIOLIB
306	select PINCTRL
307	select RESET_CONTROLLER
308	help
309	  This enables support for the ARMv8 based Nuvoton MA35 series SoCs.
310
311config ARCH_NPCM
312	bool "Nuvoton NPCM Architecture"
313	select PINCTRL
314	select GPIOLIB
315	select NPCM7XX_TIMER
316	select RESET_CONTROLLER
317	select MFD_SYSCON
318	help
319	  General support for NPCM8xx BMC (Arbel).
320	  Nuvoton NPCM8xx BMC based on the Cortex A35.
321
322config ARCH_PENSANDO
323	bool "AMD Pensando Platforms"
324	help
325	  This enables support for the ARMv8 based AMD Pensando SoC
326	  family to include the Elba SoC.
327
328	  AMD Pensando SoCs support a range of Distributed Services
329	  Cards in PCIe format installed into servers.  The Elba
330	  SoC includes 16 Cortex A-72 CPU cores, 144 P4-programmable
331	  cores for a minimal latency/jitter datapath, and network
332	  interfaces up to 200 Gb/s.
333
334config ARCH_QCOM
335	bool "Qualcomm Platforms"
336	select GPIOLIB
337	select PINCTRL
338	select HAVE_PWRCTRL if PCI
339	select HAVE_SHARED_GPIOS
340	help
341	  This enables support for the ARMv8 based Qualcomm chipsets.
342
343config ARCH_REALTEK
344	bool "Realtek Platforms"
345	select RESET_CONTROLLER
346	help
347	  This enables support for the ARMv8 based Realtek chipsets,
348	  like the RTD1295.
349
350config ARCH_RENESAS
351	bool "Renesas SoC Platforms"
352	help
353	  This enables support for the ARMv8 based Renesas SoCs.
354
355config ARCH_ROCKCHIP
356	bool "Rockchip Platforms"
357	select ARCH_HAS_RESET_CONTROLLER
358	select PINCTRL
359	select PM
360	select ROCKCHIP_TIMER
361	help
362	  This enables support for the ARMv8 based Rockchip chipsets,
363	  like the RK3368.
364
365config ARCH_SEATTLE
366	bool "AMD Seattle SoC Family"
367	help
368	  This enables support for AMD Seattle SOC Family
369
370config ARCH_INTEL_SOCFPGA
371	bool "Intel's SoCFPGA ARMv8 Families"
372	help
373	  This enables support for Intel's SoCFPGA ARMv8 families:
374	  Stratix 10 (ex. Altera), Stratix10 Software Virtual Platform,
375	  Agilex and eASIC N5X.
376
377config ARCH_SOPHGO
378	bool "Sophgo SoCs"
379	select ARCH_HAS_RESET_CONTROLLER
380	help
381	  This enables support for Sophgo SoC platform hardware.
382
383config ARCH_STM32
384	bool "STMicroelectronics STM32 SoC Family"
385	select GPIOLIB
386	select PINCTRL
387	select ARM_SCMI_PROTOCOL
388	select REGULATOR
389	select REGULATOR_ARM_SCMI
390	select COMMON_CLK_SCMI
391	select STM32_FIREWALL
392	help
393	  This enables support for ARMv8 based STMicroelectronics
394	  STM32 family, including:
395		- STM32MP21:
396			- STM32MP211, STM32MP213, STM32MP215.
397		- STM32MP23:
398			- STM32MP231, STM32MP233, STM32MP235.
399		- STM32MP25:
400			- STM32MP251, STM32MP253, STM32MP255 and STM32MP257.
401
402config ARCH_SYNQUACER
403	bool "Socionext SynQuacer SoC Family"
404	select IRQ_FASTEOI_HIERARCHY_HANDLERS
405
406config ARCH_TEGRA
407	bool "NVIDIA Tegra SoC Family"
408	select ARCH_HAS_RESET_CONTROLLER
409	select ARM_GIC_PM
410	select CLKSRC_MMIO
411	select TIMER_OF
412	select GPIOLIB
413	select PINCTRL
414	select PM
415	select PM_GENERIC_DOMAINS
416	select RESET_CONTROLLER
417	help
418	  This enables support for the NVIDIA Tegra SoC family.
419
420config ARCH_TESLA_FSD
421	bool "Tesla platform"
422	depends on ARCH_EXYNOS
423	help
424	  Support for ARMv8 based Tesla platforms.
425
426config ARCH_SPRD
427	bool "Spreadtrum SoC platform"
428	help
429	  Support for Spreadtrum ARM based SoCs
430
431config ARCH_THUNDER
432	bool "Cavium Inc. Thunder SoC Family"
433	help
434	  This enables support for Cavium's Thunder Family of SoCs.
435
436config ARCH_THUNDER2
437	bool "Cavium ThunderX2 Server Processors"
438	select GPIOLIB
439	help
440	  This enables support for Cavium's ThunderX2 CN99XX family of
441	  server processors.
442
443config ARCH_UNIPHIER
444	bool "Socionext UniPhier SoC Family"
445	select ARCH_HAS_RESET_CONTROLLER
446	select PINCTRL
447	select RESET_CONTROLLER
448	help
449	  This enables support for Socionext UniPhier SoC family.
450
451config ARCH_VEXPRESS
452	bool "ARM Ltd Platforms"
453	select GPIOLIB
454	select PM
455	select PM_GENERIC_DOMAINS
456	help
457	  This enables support for the ARM Ltd Platforms.
458
459config ARCH_VISCONTI
460	bool "Toshiba Visconti SoC Family"
461	select PINCTRL
462	select PINCTRL_VISCONTI
463	help
464	  This enables support for Toshiba Visconti SoCs Family.
465
466config ARCH_XGENE
467	bool "AppliedMicro X-Gene SOC Family"
468	help
469	  This enables support for AppliedMicro X-Gene SOC Family
470
471config ARCH_ZYNQMP
472	bool "Xilinx ZynqMP Family"
473	help
474	  This enables support for Xilinx ZynqMP Family
475
476endmenu # "Platform selection"
477