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