xref: /openbmc/linux/arch/arm64/Kconfig.platforms (revision 37744fee)
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_AGILEX
12	bool "Intel's Agilex SoCFPGA Family"
13	help
14	  This enables support for Intel's Agilex SoCFPGA Family.
15
16config ARCH_SUNXI
17	bool "Allwinner sunxi 64-bit SoC Family"
18	select ARCH_HAS_RESET_CONTROLLER
19	select GENERIC_IRQ_CHIP
20	select PINCTRL
21	select RESET_CONTROLLER
22	help
23	  This enables support for Allwinner sunxi based SoCs like the A64.
24
25config ARCH_ALPINE
26	bool "Annapurna Labs Alpine platform"
27	select ALPINE_MSI if PCI
28	help
29	  This enables support for the Annapurna Labs Alpine
30	  Soc family.
31
32config ARCH_BCM2835
33	bool "Broadcom BCM2835 family"
34	select TIMER_OF
35	select GPIOLIB
36	select MFD_CORE
37	select PINCTRL
38	select PINCTRL_BCM2835
39	select ARM_AMBA
40	select ARM_GIC
41	select ARM_TIMER_SP804
42	help
43	  This enables support for the Broadcom BCM2837 and BCM2711 SoC.
44	  These SoCs are used in the Raspberry Pi 3 and 4 devices.
45
46config ARCH_BCM_IPROC
47	bool "Broadcom iProc SoC Family"
48	select COMMON_CLK_IPROC
49	select GPIOLIB
50	select PINCTRL
51	help
52	  This enables support for Broadcom iProc based SoCs
53
54config ARCH_BERLIN
55	bool "Marvell Berlin SoC Family"
56	select DW_APB_ICTL
57	select GPIOLIB
58	select PINCTRL
59	help
60	  This enables support for Marvell Berlin SoC Family
61
62config ARCH_BITMAIN
63	bool "Bitmain SoC Platforms"
64	help
65	  This enables support for the Bitmain SoC Family.
66
67config ARCH_BRCMSTB
68	bool "Broadcom Set-Top-Box SoCs"
69	select ARCH_HAS_RESET_CONTROLLER
70	select BCM7038_L1_IRQ
71	select BRCMSTB_L2_IRQ
72	select GENERIC_IRQ_CHIP
73	select PINCTRL
74	help
75	  This enables support for Broadcom's ARMv8 Set Top Box SoCs
76
77config ARCH_EXYNOS
78	bool "ARMv8 based Samsung Exynos SoC family"
79	select COMMON_CLK_SAMSUNG
80	select EXYNOS_CHIPID
81	select EXYNOS_PM_DOMAINS if PM_GENERIC_DOMAINS
82	select EXYNOS_PMU
83	select HAVE_S3C2410_WATCHDOG if WATCHDOG
84	select HAVE_S3C_RTC if RTC_CLASS
85	select PINCTRL
86	select PINCTRL_EXYNOS
87	select PM_GENERIC_DOMAINS if PM
88	select SOC_SAMSUNG
89	help
90	  This enables support for ARMv8 based Samsung Exynos SoC family.
91
92config ARCH_K3
93	bool "Texas Instruments Inc. K3 multicore SoC architecture"
94	select PM_GENERIC_DOMAINS if PM
95	select MAILBOX
96	select SOC_TI
97	select TI_MESSAGE_MANAGER
98	select TI_SCI_PROTOCOL
99	select TI_SCI_INTR_IRQCHIP
100	select TI_SCI_INTA_IRQCHIP
101	help
102	  This enables support for Texas Instruments' K3 multicore SoC
103	  architecture.
104
105config ARCH_LAYERSCAPE
106	bool "ARMv8 based Freescale Layerscape SoC family"
107	select EDAC_SUPPORT
108	help
109	  This enables support for the Freescale Layerscape SoC family.
110
111config ARCH_LG1K
112	bool "LG Electronics LG1K SoC Family"
113	help
114	  This enables support for LG Electronics LG1K SoC Family
115
116config ARCH_HISI
117	bool "Hisilicon SoC Family"
118	select ARM_TIMER_SP804
119	select HISILICON_IRQ_MBIGEN if PCI
120	select PINCTRL
121	help
122	  This enables support for Hisilicon ARMv8 SoC family
123
124config ARCH_MEDIATEK
125	bool "MediaTek SoC Family"
126	select ARM_GIC
127	select PINCTRL
128	select MTK_TIMER
129	help
130	  This enables support for MediaTek MT27xx, MT65xx, MT76xx
131	  & MT81xx ARMv8 SoCs
132
133config ARCH_MESON
134	bool "Amlogic Platforms"
135	select PINCTRL
136	select PINCTRL_MESON
137	select COMMON_CLK_GXBB
138	select COMMON_CLK_AXG
139	select COMMON_CLK_G12A
140	select MESON_IRQ_GPIO
141	help
142	  This enables support for the arm64 based Amlogic SoCs
143	  such as the s905, S905X/D, S912, A113X/D or S905X/D2
144
145config ARCH_MVEBU
146	bool "Marvell EBU SoC Family"
147	select ARMADA_AP806_SYSCON
148	select ARMADA_CP110_SYSCON
149	select ARMADA_37XX_CLK
150	select GPIOLIB
151	select GPIOLIB_IRQCHIP
152	select MVEBU_GICP
153	select MVEBU_ICU
154	select MVEBU_ODMI
155	select MVEBU_PIC
156	select MVEBU_SEI
157	select OF_GPIO
158	select PINCTRL
159	select PINCTRL_ARMADA_37XX
160	select PINCTRL_ARMADA_AP806
161	select PINCTRL_ARMADA_CP110
162	help
163	  This enables support for Marvell EBU familly, including:
164	   - Armada 3700 SoC Family
165	   - Armada 7K SoC Family
166	   - Armada 8K SoC Family
167
168config ARCH_MXC
169	bool "ARMv8 based NXP i.MX SoC family"
170	select ARM64_ERRATUM_843419
171	select ARM64_ERRATUM_845719 if COMPAT
172	select IMX_GPCV2
173	select IMX_GPCV2_PM_DOMAINS
174	select PM
175	select PM_GENERIC_DOMAINS
176	select SOC_BUS
177	select TIMER_IMX_SYS_CTR
178	help
179	  This enables support for the ARMv8 based SoCs in the
180	  NXP i.MX family.
181
182config ARCH_QCOM
183	bool "Qualcomm Platforms"
184	select GPIOLIB
185	select PINCTRL
186	help
187	  This enables support for the ARMv8 based Qualcomm chipsets.
188
189config ARCH_REALTEK
190	bool "Realtek Platforms"
191	select RESET_CONTROLLER
192	help
193	  This enables support for the ARMv8 based Realtek chipsets,
194	  like the RTD1295.
195
196config ARCH_RENESAS
197	bool "Renesas SoC Platforms"
198	select GPIOLIB
199	select PINCTRL
200	select SOC_BUS
201	help
202	  This enables support for the ARMv8 based Renesas SoCs.
203
204config ARCH_ROCKCHIP
205	bool "Rockchip Platforms"
206	select ARCH_HAS_RESET_CONTROLLER
207	select GPIOLIB
208	select PINCTRL
209	select PINCTRL_ROCKCHIP
210	select PM
211	select ROCKCHIP_TIMER
212	help
213	  This enables support for the ARMv8 based Rockchip chipsets,
214	  like the RK3368.
215
216config ARCH_S32
217	bool "NXP S32 SoC Family"
218	help
219	  This enables support for the NXP S32 family of processors.
220
221config ARCH_SEATTLE
222	bool "AMD Seattle SoC Family"
223	help
224	  This enables support for AMD Seattle SOC Family
225
226config ARCH_STRATIX10
227	bool "Altera's Stratix 10 SoCFPGA Family"
228	help
229	  This enables support for Altera's Stratix 10 SoCFPGA Family.
230
231config ARCH_SYNQUACER
232	bool "Socionext SynQuacer SoC Family"
233
234config ARCH_TEGRA
235	bool "NVIDIA Tegra SoC Family"
236	select ARCH_HAS_RESET_CONTROLLER
237	select ARM_GIC_PM
238	select CLKDEV_LOOKUP
239	select CLKSRC_MMIO
240	select TIMER_OF
241	select GENERIC_CLOCKEVENTS
242	select GPIOLIB
243	select PINCTRL
244	select PM
245	select PM_GENERIC_DOMAINS
246	select RESET_CONTROLLER
247	help
248	  This enables support for the NVIDIA Tegra SoC family.
249
250config ARCH_SPRD
251	tristate "Spreadtrum SoC platform"
252	help
253	  Support for Spreadtrum ARM based SoCs
254
255config ARCH_THUNDER
256	bool "Cavium Inc. Thunder SoC Family"
257	help
258	  This enables support for Cavium's Thunder Family of SoCs.
259
260config ARCH_THUNDER2
261	bool "Cavium ThunderX2 Server Processors"
262	select GPIOLIB
263	help
264	  This enables support for Cavium's ThunderX2 CN99XX family of
265	  server processors.
266
267config ARCH_UNIPHIER
268	bool "Socionext UniPhier SoC Family"
269	select ARCH_HAS_RESET_CONTROLLER
270	select PINCTRL
271	select RESET_CONTROLLER
272	help
273	  This enables support for Socionext UniPhier SoC family.
274
275config ARCH_VEXPRESS
276	bool "ARMv8 software model (Versatile Express)"
277	select COMMON_CLK_VERSATILE
278	select GPIOLIB
279	select PM
280	select PM_GENERIC_DOMAINS
281	select POWER_RESET_VEXPRESS
282	select VEXPRESS_CONFIG
283	help
284	  This enables support for the ARMv8 software model (Versatile
285	  Express).
286
287config ARCH_VULCAN
288	def_bool n
289
290config ARCH_XGENE
291	bool "AppliedMicro X-Gene SOC Family"
292	help
293	  This enables support for AppliedMicro X-Gene SOC Family
294
295config ARCH_ZX
296	bool "ZTE ZX SoC Family"
297	select PINCTRL
298	help
299	  This enables support for ZTE ZX SoC Family
300
301config ARCH_ZYNQMP
302	bool "Xilinx ZynqMP Family"
303	help
304	  This enables support for Xilinx ZynqMP Family
305
306endmenu
307