xref: /linux/arch/arm64/Kconfig.platforms (revision 205a7309cccd34ad49c2b6b1b59b907c12395d6c)
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 PINCTRL_STM32MP257
337	select ARM_SMC_MBOX
338	select ARM_SCMI_PROTOCOL
339	select REGULATOR
340	select REGULATOR_ARM_SCMI
341	select COMMON_CLK_SCMI
342	select STM32_FIREWALL
343	help
344	  This enables support for ARMv8 based STMicroelectronics
345	  STM32 family, including:
346		- STM32MP21:
347			- STM32MP211, STM32MP213, STM32MP215.
348		- STM32MP23:
349			- STM32MP231, STM32MP233, STM32MP235.
350		- STM32MP25:
351			- STM32MP251, STM32MP253, STM32MP255 and STM32MP257.
352
353config ARCH_SYNQUACER
354	bool "Socionext SynQuacer SoC Family"
355	select IRQ_FASTEOI_HIERARCHY_HANDLERS
356
357config ARCH_TEGRA
358	bool "NVIDIA Tegra SoC Family"
359	select ARCH_HAS_RESET_CONTROLLER
360	select ARM_GIC_PM
361	select CLKSRC_MMIO
362	select TIMER_OF
363	select GPIOLIB
364	select PINCTRL
365	select PM
366	select PM_GENERIC_DOMAINS
367	select RESET_CONTROLLER
368	help
369	  This enables support for the NVIDIA Tegra SoC family.
370
371config ARCH_TESLA_FSD
372	bool "Tesla platform"
373	depends on ARCH_EXYNOS
374	help
375	  Support for ARMv8 based Tesla platforms.
376
377config ARCH_SPRD
378	bool "Spreadtrum SoC platform"
379	help
380	  Support for Spreadtrum ARM based SoCs
381
382config ARCH_THUNDER
383	bool "Cavium Inc. Thunder SoC Family"
384	help
385	  This enables support for Cavium's Thunder Family of SoCs.
386
387config ARCH_THUNDER2
388	bool "Cavium ThunderX2 Server Processors"
389	select GPIOLIB
390	help
391	  This enables support for Cavium's ThunderX2 CN99XX family of
392	  server processors.
393
394config ARCH_UNIPHIER
395	bool "Socionext UniPhier SoC Family"
396	select ARCH_HAS_RESET_CONTROLLER
397	select PINCTRL
398	select RESET_CONTROLLER
399	help
400	  This enables support for Socionext UniPhier SoC family.
401
402config ARCH_VEXPRESS
403	bool "ARM Ltd Platforms"
404	select GPIOLIB
405	select PM
406	select PM_GENERIC_DOMAINS
407	help
408	  This enables support for the ARM Ltd Platforms.
409
410config ARCH_VISCONTI
411	bool "Toshiba Visconti SoC Family"
412	select PINCTRL
413	select PINCTRL_VISCONTI
414	help
415	  This enables support for Toshiba Visconti SoCs Family.
416
417config ARCH_XGENE
418	bool "AppliedMicro X-Gene SOC Family"
419	help
420	  This enables support for AppliedMicro X-Gene SOC Family
421
422config ARCH_ZYNQMP
423	bool "Xilinx ZynqMP Family"
424	help
425	  This enables support for Xilinx ZynqMP Family
426
427endmenu # "Platform selection"
428