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