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