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