xref: /linux/arch/arm64/Kconfig.platforms (revision 66a1025f7f0bc00404ec6357af68815c70dadae2)
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	help
40	  This enables support for Apple's in-house ARM SoC family, such
41	  as the Apple M1.
42
43config ARCH_ARTPEC
44	bool "Axis Communications ARTPEC SoC Family"
45	depends on ARCH_EXYNOS
46	select ARM_GIC
47	help
48	   This enables support for the ARMv8 based ARTPEC SoC Family.
49
50config ARCH_AXIADO
51	bool "Axiado SoC Family"
52	select GPIOLIB
53	help
54	  This enables support for Axiado SoC family like AX3000
55
56menuconfig ARCH_BCM
57	bool "Broadcom SoC Support"
58
59if ARCH_BCM
60
61config ARCH_BCM2835
62	bool "Broadcom BCM2835 family"
63	select TIMER_OF
64	select GPIOLIB
65	select MFD_CORE
66	select PINCTRL
67	select PINCTRL_BCM2835
68	select ARM_AMBA
69	select ARM_GIC
70	select ARM_TIMER_SP804
71	help
72	  This enables support for the Broadcom BCM2837 and BCM2711 SoC.
73	  These SoCs are used in the Raspberry Pi 3 and 4 devices.
74
75config ARCH_BCM_IPROC
76	bool "Broadcom iProc SoC Family"
77	select COMMON_CLK_IPROC
78	select GPIOLIB
79	select PINCTRL
80	help
81	  This enables support for Broadcom iProc based SoCs
82
83config ARCH_BCMBCA
84	bool "Broadcom Broadband Carrier Access (BCA) origin SoC"
85	select GPIOLIB
86	help
87	  Say Y if you intend to run the kernel on a Broadcom Broadband ARM-based
88	  BCA chipset.
89
90	  This enables support for Broadcom BCA ARM-based broadband chipsets,
91	  including the DSL, PON and Wireless family of chips.
92
93config ARCH_BRCMSTB
94	bool "Broadcom Set-Top-Box SoCs"
95	select ARCH_HAS_RESET_CONTROLLER
96	select GENERIC_IRQ_CHIP
97	select PINCTRL
98	help
99	  This enables support for Broadcom's ARMv8 Set Top Box SoCs
100
101endif
102
103config ARCH_BERLIN
104	bool "Marvell Berlin SoC Family"
105	select DW_APB_ICTL
106	select DW_APB_TIMER_OF
107	select GPIOLIB
108	select PINCTRL
109	help
110	  This enables support for Marvell Berlin SoC Family
111
112config ARCH_BITMAIN
113	bool "Bitmain SoC Platforms"
114	help
115	  This enables support for the Bitmain SoC Family.
116
117config ARCH_BLAIZE
118	bool "Blaize SoC Platforms"
119	help
120	  This enables support for the Blaize SoC family
121
122config ARCH_BST
123	bool "Black Sesame Technologies SoC Family"
124	help
125	  This enables support for Black Sesame Technologies (BST) SoC family.
126	  BST produces automotive-grade system-on-chips for intelligent driving,
127	  focusing on computer vision and AI capabilities. The BST C1200 family
128	  includes SoCs for ADAS and autonomous driving applications.
129
130config ARCH_CIX
131	bool "Cixtech SoC family"
132	help
133	  This enables support for the Cixtech SoC family,
134	  like P1(sky1).
135
136config ARCH_EXYNOS
137	bool "Samsung Exynos SoC family"
138	select COMMON_CLK_SAMSUNG
139	select CLKSRC_EXYNOS_MCT
140	select EXYNOS_PM_DOMAINS if PM_GENERIC_DOMAINS
141	select EXYNOS_PMU
142	select PINCTRL
143	select PINCTRL_EXYNOS
144	select PM_GENERIC_DOMAINS if PM
145	select SOC_SAMSUNG
146	help
147	  This enables support for ARMv8 based Samsung Exynos SoC family.
148
149config ARCH_K3
150	bool "Texas Instruments Inc. K3 multicore SoC architecture"
151	select SOC_TI
152	select TI_K3_SOCINFO
153	help
154	  This enables support for Texas Instruments' K3 multicore SoC
155	  architecture.
156
157config ARCH_LG1K
158	bool "LG Electronics LG1K SoC Family"
159	help
160	  This enables support for LG Electronics LG1K SoC Family
161
162config ARCH_HISI
163	bool "Hisilicon SoC Family"
164	select ARM_TIMER_SP804
165	select HISILICON_IRQ_MBIGEN if PCI
166	select PINCTRL
167	help
168	  This enables support for Hisilicon ARMv8 SoC family
169
170config ARCH_KEEMBAY
171	bool "Keem Bay SoC"
172	help
173	  This enables support for Intel Movidius SoC code-named Keem Bay.
174
175config ARCH_MEDIATEK
176	bool "MediaTek SoC Family"
177	select ARM_GIC
178	select PINCTRL
179	select MTK_TIMER
180	help
181	  This enables support for MediaTek MT27xx, MT65xx, MT76xx
182	  & MT81xx ARMv8 SoCs
183
184config ARCH_MESON
185	bool "Amlogic Platforms"
186	help
187	  This enables support for the arm64 based Amlogic SoCs
188	  such as the s905, S905X/D, S912, A113X/D or S905X/D2
189
190menu "Microchip SoC support"
191
192config ARCH_MICROCHIP
193	bool
194
195config ARCH_LAN969X
196	bool "Microchip LAN969X SoC family"
197	select PINCTRL
198	select DW_APB_TIMER_OF
199	select ARCH_MICROCHIP
200	help
201	  This enables support for the Microchip LAN969X ARMv8-based
202	  SoC family of TSN-capable gigabit switches.
203
204	  The LAN969X Ethernet switch family provides a rich set of
205	  switching features such as advanced TCAM-based VLAN and QoS
206	  processing enabling delivery of differentiated services, and
207	  security through TCAM-based frame processing using versatile
208	  content aware processor (VCAP).
209
210config ARCH_SPARX5
211	bool "Microchip Sparx5 SoC family"
212	select PINCTRL
213	select DW_APB_TIMER_OF
214	select ARCH_MICROCHIP
215	help
216	  This enables support for the Microchip Sparx5 ARMv8-based
217	  SoC family of TSN-capable gigabit switches.
218
219	  The SparX-5 Ethernet switch family provides a rich set of
220	  switching features such as advanced TCAM-based VLAN and QoS
221	  processing enabling delivery of differentiated services, and
222	  security through TCAM-based frame processing using versatile
223	  content aware processor (VCAP).
224
225endmenu
226
227config ARCH_MMP
228	bool "Marvell MMP SoC Family"
229	select PINCTRL
230	select PINCTRL_SINGLE
231	help
232	  This enables support for Marvell MMP SoC family, currently
233	  supporting PXA1908 aka IAP140.
234
235config ARCH_MVEBU
236	bool "Marvell EBU SoC Family"
237	select ARMADA_AP806_SYSCON
238	select ARMADA_CP110_SYSCON
239	select ARMADA_37XX_CLK
240	select GPIOLIB
241	select GPIOLIB_IRQCHIP
242	select MVEBU_GICP
243	select MVEBU_ICU
244	select MVEBU_ODMI
245	select MVEBU_PIC
246	select MVEBU_SEI
247	select OF_GPIO
248	select PINCTRL
249	select PINCTRL_ARMADA_37XX
250	select PINCTRL_ARMADA_AP806
251	select PINCTRL_ARMADA_CP110
252	select PINCTRL_AC5
253	help
254	  This enables support for Marvell EBU family, including:
255	   - Armada 3700 SoC Family
256	   - Armada 7K SoC Family
257	   - Armada 8K SoC Family
258	   - 98DX2530 SoC Family
259
260menuconfig ARCH_NXP
261	bool "NXP SoC support"
262
263if ARCH_NXP
264
265config ARCH_LAYERSCAPE
266	bool "Freescale Layerscape SoC family"
267	help
268	  This enables support for the Freescale Layerscape SoC family.
269
270config ARCH_MXC
271	bool "NXP i.MX SoC family"
272	select ARM64_ERRATUM_843419
273	select ARM64_ERRATUM_845719 if COMPAT
274	select IMX_GPCV2
275	select IMX_GPCV2_PM_DOMAINS
276	select PM
277	select PM_GENERIC_DOMAINS
278	select SOC_BUS
279	select TIMER_IMX_SYS_CTR
280	help
281	  This enables support for the ARMv8 based SoCs in the
282	  NXP i.MX family.
283
284config ARCH_S32
285	bool "NXP S32 SoC Family"
286	help
287	  This enables support for the NXP S32 family of processors.
288
289endif
290
291config ARCH_MA35
292	bool "Nuvoton MA35 Architecture"
293	select GPIOLIB
294	select PINCTRL
295	select RESET_CONTROLLER
296	help
297	  This enables support for the ARMv8 based Nuvoton MA35 series SoCs.
298
299config ARCH_NPCM
300	bool "Nuvoton NPCM Architecture"
301	select PINCTRL
302	select GPIOLIB
303	select NPCM7XX_TIMER
304	select RESET_CONTROLLER
305	select MFD_SYSCON
306	help
307	  General support for NPCM8xx BMC (Arbel).
308	  Nuvoton NPCM8xx BMC based on the Cortex A35.
309
310config ARCH_PENSANDO
311	bool "AMD Pensando Platforms"
312	help
313	  This enables support for the ARMv8 based AMD Pensando SoC
314	  family to include the Elba SoC.
315
316	  AMD Pensando SoCs support a range of Distributed Services
317	  Cards in PCIe format installed into servers.  The Elba
318	  SoC includes 16 Cortex A-72 CPU cores, 144 P4-programmable
319	  cores for a minimal latency/jitter datapath, and network
320	  interfaces up to 200 Gb/s.
321
322config ARCH_QCOM
323	bool "Qualcomm Platforms"
324	select GPIOLIB
325	select PINCTRL
326	select HAVE_PWRCTRL if PCI
327	select HAVE_SHARED_GPIOS
328	help
329	  This enables support for the ARMv8 based Qualcomm chipsets.
330
331config ARCH_REALTEK
332	bool "Realtek Platforms"
333	select RESET_CONTROLLER
334	help
335	  This enables support for the ARMv8 based Realtek chipsets,
336	  like the RTD1295.
337
338config ARCH_RENESAS
339	bool "Renesas SoC Platforms"
340	help
341	  This enables support for the ARMv8 based Renesas SoCs.
342
343config ARCH_ROCKCHIP
344	bool "Rockchip Platforms"
345	select ARCH_HAS_RESET_CONTROLLER
346	select PINCTRL
347	select PM
348	select ROCKCHIP_TIMER
349	help
350	  This enables support for the ARMv8 based Rockchip chipsets,
351	  like the RK3368.
352
353config ARCH_SEATTLE
354	bool "AMD Seattle SoC Family"
355	help
356	  This enables support for AMD Seattle SOC Family
357
358config ARCH_INTEL_SOCFPGA
359	bool "Intel's SoCFPGA ARMv8 Families"
360	help
361	  This enables support for Intel's SoCFPGA ARMv8 families:
362	  Stratix 10 (ex. Altera), Stratix10 Software Virtual Platform,
363	  Agilex and eASIC N5X.
364
365config ARCH_SOPHGO
366	bool "Sophgo SoCs"
367	select ARCH_HAS_RESET_CONTROLLER
368	help
369	  This enables support for Sophgo SoC platform hardware.
370
371config ARCH_STM32
372	bool "STMicroelectronics STM32 SoC Family"
373	select GPIOLIB
374	select PINCTRL
375	select ARM_SMC_MBOX
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