xref: /linux/arch/arm64/Kconfig.platforms (revision d2be38b9a5514dbc7dc0c96a2a7f619fcddce00d)
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	help
211	  This enables support for the Freescale Layerscape SoC family.
212
213config ARCH_MXC
214	bool "NXP i.MX SoC family"
215	select ARM64_ERRATUM_843419
216	select ARM64_ERRATUM_845719 if COMPAT
217	select IMX_GPCV2
218	select IMX_GPCV2_PM_DOMAINS
219	select PM
220	select PM_GENERIC_DOMAINS
221	select SOC_BUS
222	select TIMER_IMX_SYS_CTR
223	help
224	  This enables support for the ARMv8 based SoCs in the
225	  NXP i.MX family.
226
227config ARCH_S32
228	bool "NXP S32 SoC Family"
229	help
230	  This enables support for the NXP S32 family of processors.
231
232endif
233
234config ARCH_MA35
235	bool "Nuvoton MA35 Architecture"
236	select GPIOLIB
237	select PINCTRL
238	select RESET_CONTROLLER
239	help
240	  This enables support for the ARMv8 based Nuvoton MA35 series SoCs.
241
242config ARCH_NPCM
243	bool "Nuvoton NPCM Architecture"
244	select PINCTRL
245	select GPIOLIB
246	select NPCM7XX_TIMER
247	select RESET_CONTROLLER
248	select MFD_SYSCON
249	help
250	  General support for NPCM8xx BMC (Arbel).
251	  Nuvoton NPCM8xx BMC based on the Cortex A35.
252
253config ARCH_PENSANDO
254	bool "AMD Pensando Platforms"
255	help
256	  This enables support for the ARMv8 based AMD Pensando SoC
257	  family to include the Elba SoC.
258
259	  AMD Pensando SoCs support a range of Distributed Services
260	  Cards in PCIe format installed into servers.  The Elba
261	  SoC includes 16 Cortex A-72 CPU cores, 144 P4-programmable
262	  cores for a minimal latency/jitter datapath, and network
263	  interfaces up to 200 Gb/s.
264
265config ARCH_QCOM
266	bool "Qualcomm Platforms"
267	select GPIOLIB
268	select PINCTRL
269	select HAVE_PWRCTL if PCI
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 REGULATOR
316	select REGULATOR_ARM_SCMI
317	select COMMON_CLK_SCMI
318	select STM32_FIREWALL
319	help
320	  This enables support for ARMv8 based STMicroelectronics
321	  STM32 family, including:
322		- STM32MP25:
323			- STM32MP251, STM32MP253, STM32MP255 and STM32MP257.
324
325config ARCH_SYNQUACER
326	bool "Socionext SynQuacer SoC Family"
327	select IRQ_FASTEOI_HIERARCHY_HANDLERS
328
329config ARCH_TEGRA
330	bool "NVIDIA Tegra SoC Family"
331	select ARCH_HAS_RESET_CONTROLLER
332	select ARM_GIC_PM
333	select CLKSRC_MMIO
334	select TIMER_OF
335	select GPIOLIB
336	select PINCTRL
337	select PM
338	select PM_GENERIC_DOMAINS
339	select RESET_CONTROLLER
340	help
341	  This enables support for the NVIDIA Tegra SoC family.
342
343config ARCH_TESLA_FSD
344	bool "Tesla platform"
345	depends on ARCH_EXYNOS
346	help
347	  Support for ARMv8 based Tesla platforms.
348
349config ARCH_SPRD
350	bool "Spreadtrum SoC platform"
351	help
352	  Support for Spreadtrum ARM based SoCs
353
354config ARCH_THUNDER
355	bool "Cavium Inc. Thunder SoC Family"
356	help
357	  This enables support for Cavium's Thunder Family of SoCs.
358
359config ARCH_THUNDER2
360	bool "Cavium ThunderX2 Server Processors"
361	select GPIOLIB
362	help
363	  This enables support for Cavium's ThunderX2 CN99XX family of
364	  server processors.
365
366config ARCH_UNIPHIER
367	bool "Socionext UniPhier SoC Family"
368	select ARCH_HAS_RESET_CONTROLLER
369	select PINCTRL
370	select RESET_CONTROLLER
371	help
372	  This enables support for Socionext UniPhier SoC family.
373
374config ARCH_VEXPRESS
375	bool "ARMv8 software model (Versatile Express)"
376	select GPIOLIB
377	select PM
378	select PM_GENERIC_DOMAINS
379	help
380	  This enables support for the ARMv8 software model (Versatile
381	  Express).
382
383config ARCH_VISCONTI
384	bool "Toshiba Visconti SoC Family"
385	select PINCTRL
386	select PINCTRL_VISCONTI
387	help
388	  This enables support for Toshiba Visconti SoCs Family.
389
390config ARCH_XGENE
391	bool "AppliedMicro X-Gene SOC Family"
392	help
393	  This enables support for AppliedMicro X-Gene SOC Family
394
395config ARCH_ZYNQMP
396	bool "Xilinx ZynqMP Family"
397	help
398	  This enables support for Xilinx ZynqMP Family
399
400endmenu # "Platform selection"
401