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