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