xref: /openbmc/linux/arch/arm64/Kconfig.platforms (revision 2b59af8c)
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_SUNXI
12	bool "Allwinner sunxi 64-bit SoC Family"
13	select ARCH_HAS_RESET_CONTROLLER
14	select PINCTRL
15	select RESET_CONTROLLER
16	select SUN4I_TIMER
17	select SUN6I_R_INTC
18	select SUNXI_NMI_INTC
19	help
20	  This enables support for Allwinner sunxi based SoCs like the A64.
21
22config ARCH_ALPINE
23	bool "Annapurna Labs Alpine platform"
24	select ALPINE_MSI if PCI
25	help
26	  This enables support for the Annapurna Labs Alpine
27	  Soc family.
28
29config ARCH_APPLE
30	bool "Apple Silicon SoC family"
31	select APPLE_AIC
32	help
33	  This enables support for Apple's in-house ARM SoC family, starting
34	  with the Apple M1.
35
36config ARCH_BCM2835
37	bool "Broadcom BCM2835 family"
38	select TIMER_OF
39	select GPIOLIB
40	select MFD_CORE
41	select PINCTRL
42	select PINCTRL_BCM2835
43	select ARM_AMBA
44	select ARM_GIC
45	select ARM_TIMER_SP804
46	help
47	  This enables support for the Broadcom BCM2837 and BCM2711 SoC.
48	  These SoCs are used in the Raspberry Pi 3 and 4 devices.
49
50config ARCH_BCM4908
51	bool "Broadcom BCM4908 family"
52	select GPIOLIB
53	help
54	  This enables support for the Broadcom BCM4906, BCM4908 and
55	  BCM49408 SoCs. These SoCs use Brahma-B53 cores and can be
56	  found in home routers.
57
58config ARCH_BCM_IPROC
59	bool "Broadcom iProc SoC Family"
60	select COMMON_CLK_IPROC
61	select GPIOLIB
62	select PINCTRL
63	help
64	  This enables support for Broadcom iProc based SoCs
65
66config ARCH_BERLIN
67	bool "Marvell Berlin SoC Family"
68	select DW_APB_ICTL
69	select DW_APB_TIMER_OF
70	select GPIOLIB
71	select PINCTRL
72	help
73	  This enables support for Marvell Berlin SoC Family
74
75config ARCH_BITMAIN
76	bool "Bitmain SoC Platforms"
77	help
78	  This enables support for the Bitmain SoC Family.
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
88config ARCH_EXYNOS
89	bool "ARMv8 based Samsung Exynos SoC family"
90	select COMMON_CLK_SAMSUNG
91	select CLKSRC_EXYNOS_MCT
92	select EXYNOS_PM_DOMAINS if PM_GENERIC_DOMAINS
93	select EXYNOS_PMU
94	select PINCTRL
95	select PINCTRL_EXYNOS
96	select PM_GENERIC_DOMAINS if PM
97	select SOC_SAMSUNG
98	help
99	  This enables support for ARMv8 based Samsung Exynos SoC family.
100
101config ARCH_SPARX5
102	bool "ARMv8 based Microchip Sparx5 SoC family"
103	select PINCTRL
104	select DW_APB_TIMER_OF
105	help
106	  This enables support for the Microchip Sparx5 ARMv8-based
107	  SoC family of TSN-capable gigabit switches.
108
109	  The SparX-5 Ethernet switch family provides a rich set of
110	  switching features such as advanced TCAM-based VLAN and QoS
111	  processing enabling delivery of differentiated services, and
112	  security through TCAM-based frame processing using versatile
113	  content aware processor (VCAP).
114
115config ARCH_K3
116	bool "Texas Instruments Inc. K3 multicore SoC architecture"
117	select PM_GENERIC_DOMAINS if PM
118	select MAILBOX
119	select SOC_TI
120	select TI_MESSAGE_MANAGER
121	select TI_SCI_PROTOCOL
122	select TI_SCI_INTR_IRQCHIP
123	select TI_SCI_INTA_IRQCHIP
124	select TI_K3_SOCINFO
125	help
126	  This enables support for Texas Instruments' K3 multicore SoC
127	  architecture.
128
129config ARCH_LAYERSCAPE
130	bool "ARMv8 based Freescale Layerscape SoC family"
131	select EDAC_SUPPORT
132	help
133	  This enables support for the Freescale Layerscape SoC family.
134
135config ARCH_LG1K
136	bool "LG Electronics LG1K SoC Family"
137	help
138	  This enables support for LG Electronics LG1K SoC Family
139
140config ARCH_HISI
141	bool "Hisilicon SoC Family"
142	select ARM_TIMER_SP804
143	select HISILICON_IRQ_MBIGEN if PCI
144	select PINCTRL
145	help
146	  This enables support for Hisilicon ARMv8 SoC family
147
148config ARCH_KEEMBAY
149	bool "Keem Bay SoC"
150	help
151	  This enables support for Intel Movidius SoC code-named Keem Bay.
152
153config ARCH_MEDIATEK
154	bool "MediaTek SoC Family"
155	select ARM_GIC
156	select PINCTRL
157	select MTK_TIMER
158	help
159	  This enables support for MediaTek MT27xx, MT65xx, MT76xx
160	  & MT81xx ARMv8 SoCs
161
162config ARCH_MESON
163	bool "Amlogic Platforms"
164	help
165	  This enables support for the arm64 based Amlogic SoCs
166	  such as the s905, S905X/D, S912, A113X/D or S905X/D2
167
168config ARCH_MVEBU
169	bool "Marvell EBU SoC Family"
170	select ARMADA_AP806_SYSCON
171	select ARMADA_CP110_SYSCON
172	select ARMADA_37XX_CLK
173	select GPIOLIB
174	select GPIOLIB_IRQCHIP
175	select MVEBU_GICP
176	select MVEBU_ICU
177	select MVEBU_ODMI
178	select MVEBU_PIC
179	select MVEBU_SEI
180	select OF_GPIO
181	select PINCTRL
182	select PINCTRL_ARMADA_37XX
183	select PINCTRL_ARMADA_AP806
184	select PINCTRL_ARMADA_CP110
185	help
186	  This enables support for Marvell EBU familly, including:
187	   - Armada 3700 SoC Family
188	   - Armada 7K SoC Family
189	   - Armada 8K SoC Family
190
191config ARCH_MXC
192	bool "ARMv8 based NXP i.MX SoC family"
193	select ARM64_ERRATUM_843419
194	select ARM64_ERRATUM_845719 if COMPAT
195	select IMX_GPCV2
196	select IMX_GPCV2_PM_DOMAINS
197	select PM
198	select PM_GENERIC_DOMAINS
199	select SOC_BUS
200	select TIMER_IMX_SYS_CTR
201	help
202	  This enables support for the ARMv8 based SoCs in the
203	  NXP i.MX family.
204
205config ARCH_QCOM
206	bool "Qualcomm Platforms"
207	select GPIOLIB
208	select PINCTRL
209	help
210	  This enables support for the ARMv8 based Qualcomm chipsets.
211
212config ARCH_REALTEK
213	bool "Realtek Platforms"
214	select RESET_CONTROLLER
215	help
216	  This enables support for the ARMv8 based Realtek chipsets,
217	  like the RTD1295.
218
219config ARCH_RENESAS
220	bool "Renesas SoC Platforms"
221	select GPIOLIB
222	select PINCTRL
223	select SOC_BUS
224	help
225	  This enables support for the ARMv8 based Renesas SoCs.
226
227config ARCH_ROCKCHIP
228	bool "Rockchip Platforms"
229	select ARCH_HAS_RESET_CONTROLLER
230	select PINCTRL
231	select PM
232	select ROCKCHIP_TIMER
233	help
234	  This enables support for the ARMv8 based Rockchip chipsets,
235	  like the RK3368.
236
237config ARCH_S32
238	bool "NXP S32 SoC Family"
239	help
240	  This enables support for the NXP S32 family of processors.
241
242config ARCH_SEATTLE
243	bool "AMD Seattle SoC Family"
244	help
245	  This enables support for AMD Seattle SOC Family
246
247config ARCH_INTEL_SOCFPGA
248	bool "Intel's SoCFPGA ARMv8 Families"
249	help
250	  This enables support for Intel's SoCFPGA ARMv8 families:
251	  Stratix 10 (ex. Altera), Stratix10 Software Virtual Platform,
252	  Agilex and eASIC N5X.
253
254config ARCH_SYNQUACER
255	bool "Socionext SynQuacer SoC Family"
256	select IRQ_FASTEOI_HIERARCHY_HANDLERS
257
258config ARCH_TEGRA
259	bool "NVIDIA Tegra SoC Family"
260	select ARCH_HAS_RESET_CONTROLLER
261	select ARM_GIC_PM
262	select CLKSRC_MMIO
263	select TIMER_OF
264	select GPIOLIB
265	select PINCTRL
266	select PM
267	select PM_GENERIC_DOMAINS
268	select RESET_CONTROLLER
269	help
270	  This enables support for the NVIDIA Tegra SoC family.
271
272config ARCH_TESLA_FSD
273	bool "ARMv8 based Tesla platform"
274	depends on ARCH_EXYNOS
275	help
276	  Support for ARMv8 based Tesla platforms.
277
278config ARCH_SPRD
279	bool "Spreadtrum SoC platform"
280	help
281	  Support for Spreadtrum ARM based SoCs
282
283config ARCH_THUNDER
284	bool "Cavium Inc. Thunder SoC Family"
285	help
286	  This enables support for Cavium's Thunder Family of SoCs.
287
288config ARCH_THUNDER2
289	bool "Cavium ThunderX2 Server Processors"
290	select GPIOLIB
291	help
292	  This enables support for Cavium's ThunderX2 CN99XX family of
293	  server processors.
294
295config ARCH_UNIPHIER
296	bool "Socionext UniPhier SoC Family"
297	select ARCH_HAS_RESET_CONTROLLER
298	select PINCTRL
299	select RESET_CONTROLLER
300	help
301	  This enables support for Socionext UniPhier SoC family.
302
303config ARCH_VEXPRESS
304	bool "ARMv8 software model (Versatile Express)"
305	select GPIOLIB
306	select PM
307	select PM_GENERIC_DOMAINS
308	help
309	  This enables support for the ARMv8 software model (Versatile
310	  Express).
311
312config ARCH_VISCONTI
313	bool "Toshiba Visconti SoC Family"
314	select PINCTRL
315	select PINCTRL_VISCONTI
316	help
317	  This enables support for Toshiba Visconti SoCs Family.
318
319config ARCH_XGENE
320	bool "AppliedMicro X-Gene SOC Family"
321	help
322	  This enables support for AppliedMicro X-Gene SOC Family
323
324config ARCH_ZYNQMP
325	bool "Xilinx ZynqMP Family"
326	help
327	  This enables support for Xilinx ZynqMP Family
328
329endmenu # "Platform selection"
330