xref: /linux/arch/arm64/Kconfig.platforms (revision aab799b1bdd1ff3e6912f96e66c910b8a5d011bb)
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 OF_GPIO
253	select PINCTRL
254	select PINCTRL_ARMADA_37XX
255	select PINCTRL_ARMADA_AP806
256	select PINCTRL_ARMADA_CP110
257	select PINCTRL_AC5
258	help
259	  This enables support for Marvell EBU family, including:
260	   - Armada 3700 SoC Family
261	   - Armada 7K SoC Family
262	   - Armada 8K SoC Family
263	   - 98DX2530 SoC Family
264
265menuconfig ARCH_NXP
266	bool "NXP SoC support"
267
268if ARCH_NXP
269
270config ARCH_LAYERSCAPE
271	bool "Freescale Layerscape SoC family"
272	help
273	  This enables support for the Freescale Layerscape SoC family.
274
275config ARCH_MXC
276	bool "NXP i.MX SoC family"
277	select ARM64_ERRATUM_843419
278	select ARM64_ERRATUM_845719 if COMPAT
279	select IMX_GPCV2
280	select IMX_GPCV2_PM_DOMAINS
281	select PM
282	select PM_GENERIC_DOMAINS
283	select SOC_BUS
284	select TIMER_IMX_SYS_CTR
285	help
286	  This enables support for the ARMv8 based SoCs in the
287	  NXP i.MX family.
288
289config ARCH_S32
290	bool "NXP S32 SoC Family"
291	help
292	  This enables support for the NXP S32 family of processors.
293
294endif
295
296config ARCH_MA35
297	bool "Nuvoton MA35 Architecture"
298	select GPIOLIB
299	select PINCTRL
300	select RESET_CONTROLLER
301	help
302	  This enables support for the ARMv8 based Nuvoton MA35 series SoCs.
303
304config ARCH_NPCM
305	bool "Nuvoton NPCM Architecture"
306	select PINCTRL
307	select GPIOLIB
308	select NPCM7XX_TIMER
309	select RESET_CONTROLLER
310	select MFD_SYSCON
311	help
312	  General support for NPCM8xx BMC (Arbel).
313	  Nuvoton NPCM8xx BMC based on the Cortex A35.
314
315config ARCH_PENSANDO
316	bool "AMD Pensando Platforms"
317	help
318	  This enables support for the ARMv8 based AMD Pensando SoC
319	  family to include the Elba SoC.
320
321	  AMD Pensando SoCs support a range of Distributed Services
322	  Cards in PCIe format installed into servers.  The Elba
323	  SoC includes 16 Cortex A-72 CPU cores, 144 P4-programmable
324	  cores for a minimal latency/jitter datapath, and network
325	  interfaces up to 200 Gb/s.
326
327config ARCH_QCOM
328	bool "Qualcomm Platforms"
329	select GPIOLIB
330	select PINCTRL
331	select HAVE_PWRCTRL if PCI
332	select HAVE_SHARED_GPIOS
333	help
334	  This enables support for the ARMv8 based Qualcomm chipsets.
335
336config ARCH_REALTEK
337	bool "Realtek Platforms"
338	select RESET_CONTROLLER
339	help
340	  This enables support for the ARMv8 based Realtek chipsets,
341	  like the RTD1295.
342
343config ARCH_RENESAS
344	bool "Renesas SoC Platforms"
345	help
346	  This enables support for the ARMv8 based Renesas SoCs.
347
348config ARCH_ROCKCHIP
349	bool "Rockchip Platforms"
350	select ARCH_HAS_RESET_CONTROLLER
351	select PINCTRL
352	select PM
353	select ROCKCHIP_TIMER
354	help
355	  This enables support for the ARMv8 based Rockchip chipsets,
356	  like the RK3368.
357
358config ARCH_SEATTLE
359	bool "AMD Seattle SoC Family"
360	help
361	  This enables support for AMD Seattle SOC Family
362
363config ARCH_INTEL_SOCFPGA
364	bool "Intel's SoCFPGA ARMv8 Families"
365	help
366	  This enables support for Intel's SoCFPGA ARMv8 families:
367	  Stratix 10 (ex. Altera), Stratix10 Software Virtual Platform,
368	  Agilex and eASIC N5X.
369
370config ARCH_SOPHGO
371	bool "Sophgo SoCs"
372	select ARCH_HAS_RESET_CONTROLLER
373	help
374	  This enables support for Sophgo SoC platform hardware.
375
376config ARCH_STM32
377	bool "STMicroelectronics STM32 SoC Family"
378	select GPIOLIB
379	select PINCTRL
380	select ARM_SCMI_PROTOCOL
381	select REGULATOR
382	select REGULATOR_ARM_SCMI
383	select COMMON_CLK_SCMI
384	select STM32_FIREWALL
385	help
386	  This enables support for ARMv8 based STMicroelectronics
387	  STM32 family, including:
388		- STM32MP21:
389			- STM32MP211, STM32MP213, STM32MP215.
390		- STM32MP23:
391			- STM32MP231, STM32MP233, STM32MP235.
392		- STM32MP25:
393			- STM32MP251, STM32MP253, STM32MP255 and STM32MP257.
394
395config ARCH_SYNQUACER
396	bool "Socionext SynQuacer SoC Family"
397	select IRQ_FASTEOI_HIERARCHY_HANDLERS
398
399config ARCH_TEGRA
400	bool "NVIDIA Tegra SoC Family"
401	select ARCH_HAS_RESET_CONTROLLER
402	select ARM_GIC_PM
403	select CLKSRC_MMIO
404	select TIMER_OF
405	select GPIOLIB
406	select PINCTRL
407	select PM
408	select PM_GENERIC_DOMAINS
409	select RESET_CONTROLLER
410	help
411	  This enables support for the NVIDIA Tegra SoC family.
412
413config ARCH_TESLA_FSD
414	bool "Tesla platform"
415	depends on ARCH_EXYNOS
416	help
417	  Support for ARMv8 based Tesla platforms.
418
419config ARCH_SPRD
420	bool "Spreadtrum SoC platform"
421	help
422	  Support for Spreadtrum ARM based SoCs
423
424config ARCH_THUNDER
425	bool "Cavium Inc. Thunder SoC Family"
426	help
427	  This enables support for Cavium's Thunder Family of SoCs.
428
429config ARCH_THUNDER2
430	bool "Cavium ThunderX2 Server Processors"
431	select GPIOLIB
432	help
433	  This enables support for Cavium's ThunderX2 CN99XX family of
434	  server processors.
435
436config ARCH_UNIPHIER
437	bool "Socionext UniPhier SoC Family"
438	select ARCH_HAS_RESET_CONTROLLER
439	select PINCTRL
440	select RESET_CONTROLLER
441	help
442	  This enables support for Socionext UniPhier SoC family.
443
444config ARCH_VEXPRESS
445	bool "ARM Ltd Platforms"
446	select GPIOLIB
447	select PM
448	select PM_GENERIC_DOMAINS
449	help
450	  This enables support for the ARM Ltd Platforms.
451
452config ARCH_VISCONTI
453	bool "Toshiba Visconti SoC Family"
454	select PINCTRL
455	select PINCTRL_VISCONTI
456	help
457	  This enables support for Toshiba Visconti SoCs Family.
458
459config ARCH_XGENE
460	bool "AppliedMicro X-Gene SOC Family"
461	help
462	  This enables support for AppliedMicro X-Gene SOC Family
463
464config ARCH_ZYNQMP
465	bool "Xilinx ZynqMP Family"
466	help
467	  This enables support for Xilinx ZynqMP Family
468
469endmenu # "Platform selection"
470