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