Merge remote-tracking branch 'georgi/icc-get-by-index' into opp/linux-next
[linux-2.6-microblaze.git] / arch / arm64 / Kconfig.platforms
1 # SPDX-License-Identifier: GPL-2.0-only
2 menu "Platform selection"
3
4 config 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
11 config ARCH_AGILEX
12         bool "Intel's Agilex SoCFPGA Family"
13         help
14           This enables support for Intel's Agilex SoCFPGA Family.
15
16 config 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
25 config 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
32 config 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
46 config 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
54 config 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
62 config ARCH_BITMAIN
63         bool "Bitmain SoC Platforms"
64         help
65           This enables support for the Bitmain SoC Family.
66
67 config 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
77 config 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
92 config 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
105 config 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
111 config ARCH_LG1K
112         bool "LG Electronics LG1K SoC Family"
113         help
114           This enables support for LG Electronics LG1K SoC Family
115
116 config 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
124 config 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
133 config 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
145 config 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
168 config 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
182 config 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
189 config 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
196 config 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
204 config 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
216 config ARCH_S32
217         bool "NXP S32 SoC Family"
218         help
219           This enables support for the NXP S32 family of processors.
220
221 config ARCH_SEATTLE
222         bool "AMD Seattle SoC Family"
223         help
224           This enables support for AMD Seattle SOC Family
225
226 config ARCH_STRATIX10
227         bool "Altera's Stratix 10 SoCFPGA Family"
228         help
229           This enables support for Altera's Stratix 10 SoCFPGA Family.
230
231 config ARCH_SYNQUACER
232         bool "Socionext SynQuacer SoC Family"
233
234 config 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
250 config ARCH_SPRD
251         tristate "Spreadtrum SoC platform"
252         help
253           Support for Spreadtrum ARM based SoCs
254
255 config ARCH_THUNDER
256         bool "Cavium Inc. Thunder SoC Family"
257         help
258           This enables support for Cavium's Thunder Family of SoCs.
259
260 config 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
267 config 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
275 config 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
287 config ARCH_VULCAN
288         def_bool n
289
290 config ARCH_XGENE
291         bool "AppliedMicro X-Gene SOC Family"
292         help
293           This enables support for AppliedMicro X-Gene SOC Family
294
295 config ARCH_ZX
296         bool "ZTE ZX SoC Family"
297         select PINCTRL
298         help
299           This enables support for ZTE ZX SoC Family
300
301 config ARCH_ZYNQMP
302         bool "Xilinx ZynqMP Family"
303         help
304           This enables support for Xilinx ZynqMP Family
305
306 endmenu