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