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 43config ARCH_ARTPEC 44 bool "Axis Communications ARTPEC SoC Family" 45 depends on ARCH_EXYNOS 46 select ARM_GIC 47 help 48 This enables support for the ARMv8 based ARTPEC SoC Family. 49 50config ARCH_AXIADO 51 bool "Axiado SoC Family" 52 select GPIOLIB 53 help 54 This enables support for Axiado SoC family like AX3000 55 56menuconfig ARCH_BCM 57 bool "Broadcom SoC Support" 58 59if ARCH_BCM 60 61config ARCH_BCM2835 62 bool "Broadcom BCM2835 family" 63 select TIMER_OF 64 select GPIOLIB 65 select MFD_CORE 66 select PINCTRL 67 select PINCTRL_BCM2835 68 select ARM_AMBA 69 select ARM_GIC 70 select ARM_TIMER_SP804 71 help 72 This enables support for the Broadcom BCM2837 and BCM2711 SoC. 73 These SoCs are used in the Raspberry Pi 3 and 4 devices. 74 75config ARCH_BCM_IPROC 76 bool "Broadcom iProc SoC Family" 77 select COMMON_CLK_IPROC 78 select GPIOLIB 79 select PINCTRL 80 help 81 This enables support for Broadcom iProc based SoCs 82 83config ARCH_BCMBCA 84 bool "Broadcom Broadband Carrier Access (BCA) origin SoC" 85 select GPIOLIB 86 help 87 Say Y if you intend to run the kernel on a Broadcom Broadband ARM-based 88 BCA chipset. 89 90 This enables support for Broadcom BCA ARM-based broadband chipsets, 91 including the DSL, PON and Wireless family of chips. 92 93config ARCH_BRCMSTB 94 bool "Broadcom Set-Top-Box SoCs" 95 select ARCH_HAS_RESET_CONTROLLER 96 select GENERIC_IRQ_CHIP 97 select PINCTRL 98 help 99 This enables support for Broadcom's ARMv8 Set Top Box SoCs 100 101endif 102 103config ARCH_BERLIN 104 bool "Marvell Berlin SoC Family" 105 select DW_APB_ICTL 106 select DW_APB_TIMER_OF 107 select GPIOLIB 108 select PINCTRL 109 help 110 This enables support for Marvell Berlin SoC Family 111 112config ARCH_BITMAIN 113 bool "Bitmain SoC Platforms" 114 help 115 This enables support for the Bitmain SoC Family. 116 117config ARCH_BLAIZE 118 bool "Blaize SoC Platforms" 119 help 120 This enables support for the Blaize SoC family 121 122config ARCH_CIX 123 bool "Cixtech SoC family" 124 help 125 This enables support for the Cixtech SoC family, 126 like P1(sky1). 127 128config ARCH_EXYNOS 129 bool "Samsung Exynos SoC family" 130 select COMMON_CLK_SAMSUNG 131 select CLKSRC_EXYNOS_MCT 132 select EXYNOS_PM_DOMAINS if PM_GENERIC_DOMAINS 133 select EXYNOS_PMU 134 select PINCTRL 135 select PINCTRL_EXYNOS 136 select PM_GENERIC_DOMAINS if PM 137 select SOC_SAMSUNG 138 help 139 This enables support for ARMv8 based Samsung Exynos SoC family. 140 141config ARCH_K3 142 bool "Texas Instruments Inc. K3 multicore SoC architecture" 143 select SOC_TI 144 select TI_K3_SOCINFO 145 help 146 This enables support for Texas Instruments' K3 multicore SoC 147 architecture. 148 149config ARCH_LG1K 150 bool "LG Electronics LG1K SoC Family" 151 help 152 This enables support for LG Electronics LG1K SoC Family 153 154config ARCH_HISI 155 bool "Hisilicon SoC Family" 156 select ARM_TIMER_SP804 157 select HISILICON_IRQ_MBIGEN if PCI 158 select PINCTRL 159 help 160 This enables support for Hisilicon ARMv8 SoC family 161 162config ARCH_KEEMBAY 163 bool "Keem Bay SoC" 164 help 165 This enables support for Intel Movidius SoC code-named Keem Bay. 166 167config ARCH_MEDIATEK 168 bool "MediaTek SoC Family" 169 select ARM_GIC 170 select PINCTRL 171 select MTK_TIMER 172 help 173 This enables support for MediaTek MT27xx, MT65xx, MT76xx 174 & MT81xx ARMv8 SoCs 175 176config ARCH_MESON 177 bool "Amlogic Platforms" 178 help 179 This enables support for the arm64 based Amlogic SoCs 180 such as the s905, S905X/D, S912, A113X/D or S905X/D2 181 182menu "Microchip SoC support" 183 184config ARCH_MICROCHIP 185 bool 186 187config ARCH_LAN969X 188 bool "Microchip LAN969X SoC family" 189 select PINCTRL 190 select DW_APB_TIMER_OF 191 select ARCH_MICROCHIP 192 help 193 This enables support for the Microchip LAN969X ARMv8-based 194 SoC family of TSN-capable gigabit switches. 195 196 The LAN969X Ethernet switch family provides a rich set of 197 switching features such as advanced TCAM-based VLAN and QoS 198 processing enabling delivery of differentiated services, and 199 security through TCAM-based frame processing using versatile 200 content aware processor (VCAP). 201 202config ARCH_SPARX5 203 bool "Microchip Sparx5 SoC family" 204 select PINCTRL 205 select DW_APB_TIMER_OF 206 select ARCH_MICROCHIP 207 help 208 This enables support for the Microchip Sparx5 ARMv8-based 209 SoC family of TSN-capable gigabit switches. 210 211 The SparX-5 Ethernet switch family provides a rich set of 212 switching features such as advanced TCAM-based VLAN and QoS 213 processing enabling delivery of differentiated services, and 214 security through TCAM-based frame processing using versatile 215 content aware processor (VCAP). 216 217endmenu 218 219config ARCH_MMP 220 bool "Marvell MMP SoC Family" 221 select PINCTRL 222 select PINCTRL_SINGLE 223 help 224 This enables support for Marvell MMP SoC family, currently 225 supporting PXA1908 aka IAP140. 226 227config ARCH_MVEBU 228 bool "Marvell EBU SoC Family" 229 select ARMADA_AP806_SYSCON 230 select ARMADA_CP110_SYSCON 231 select ARMADA_37XX_CLK 232 select GPIOLIB 233 select GPIOLIB_IRQCHIP 234 select MVEBU_GICP 235 select MVEBU_ICU 236 select MVEBU_ODMI 237 select MVEBU_PIC 238 select MVEBU_SEI 239 select OF_GPIO 240 select PINCTRL 241 select PINCTRL_ARMADA_37XX 242 select PINCTRL_ARMADA_AP806 243 select PINCTRL_ARMADA_CP110 244 select PINCTRL_AC5 245 help 246 This enables support for Marvell EBU family, including: 247 - Armada 3700 SoC Family 248 - Armada 7K SoC Family 249 - Armada 8K SoC Family 250 - 98DX2530 SoC Family 251 252menuconfig ARCH_NXP 253 bool "NXP SoC support" 254 255if ARCH_NXP 256 257config ARCH_LAYERSCAPE 258 bool "Freescale Layerscape SoC family" 259 help 260 This enables support for the Freescale Layerscape SoC family. 261 262config ARCH_MXC 263 bool "NXP i.MX SoC family" 264 select ARM64_ERRATUM_843419 265 select ARM64_ERRATUM_845719 if COMPAT 266 select IMX_GPCV2 267 select IMX_GPCV2_PM_DOMAINS 268 select PM 269 select PM_GENERIC_DOMAINS 270 select SOC_BUS 271 select TIMER_IMX_SYS_CTR 272 help 273 This enables support for the ARMv8 based SoCs in the 274 NXP i.MX family. 275 276config ARCH_S32 277 bool "NXP S32 SoC Family" 278 help 279 This enables support for the NXP S32 family of processors. 280 281endif 282 283config ARCH_MA35 284 bool "Nuvoton MA35 Architecture" 285 select GPIOLIB 286 select PINCTRL 287 select RESET_CONTROLLER 288 help 289 This enables support for the ARMv8 based Nuvoton MA35 series SoCs. 290 291config ARCH_NPCM 292 bool "Nuvoton NPCM Architecture" 293 select PINCTRL 294 select GPIOLIB 295 select NPCM7XX_TIMER 296 select RESET_CONTROLLER 297 select MFD_SYSCON 298 help 299 General support for NPCM8xx BMC (Arbel). 300 Nuvoton NPCM8xx BMC based on the Cortex A35. 301 302config ARCH_PENSANDO 303 bool "AMD Pensando Platforms" 304 help 305 This enables support for the ARMv8 based AMD Pensando SoC 306 family to include the Elba SoC. 307 308 AMD Pensando SoCs support a range of Distributed Services 309 Cards in PCIe format installed into servers. The Elba 310 SoC includes 16 Cortex A-72 CPU cores, 144 P4-programmable 311 cores for a minimal latency/jitter datapath, and network 312 interfaces up to 200 Gb/s. 313 314config ARCH_QCOM 315 bool "Qualcomm Platforms" 316 select GPIOLIB 317 select PINCTRL 318 select HAVE_PWRCTRL if PCI 319 select HAVE_SHARED_GPIOS 320 help 321 This enables support for the ARMv8 based Qualcomm chipsets. 322 323config ARCH_REALTEK 324 bool "Realtek Platforms" 325 select RESET_CONTROLLER 326 help 327 This enables support for the ARMv8 based Realtek chipsets, 328 like the RTD1295. 329 330config ARCH_RENESAS 331 bool "Renesas SoC Platforms" 332 help 333 This enables support for the ARMv8 based Renesas SoCs. 334 335config ARCH_ROCKCHIP 336 bool "Rockchip Platforms" 337 select ARCH_HAS_RESET_CONTROLLER 338 select PINCTRL 339 select PM 340 select ROCKCHIP_TIMER 341 help 342 This enables support for the ARMv8 based Rockchip chipsets, 343 like the RK3368. 344 345config ARCH_SEATTLE 346 bool "AMD Seattle SoC Family" 347 help 348 This enables support for AMD Seattle SOC Family 349 350config ARCH_INTEL_SOCFPGA 351 bool "Intel's SoCFPGA ARMv8 Families" 352 help 353 This enables support for Intel's SoCFPGA ARMv8 families: 354 Stratix 10 (ex. Altera), Stratix10 Software Virtual Platform, 355 Agilex and eASIC N5X. 356 357config ARCH_SOPHGO 358 bool "Sophgo SoCs" 359 select ARCH_HAS_RESET_CONTROLLER 360 help 361 This enables support for Sophgo SoC platform hardware. 362 363config ARCH_STM32 364 bool "STMicroelectronics STM32 SoC Family" 365 select GPIOLIB 366 select PINCTRL 367 select ARM_SMC_MBOX 368 select ARM_SCMI_PROTOCOL 369 select REGULATOR 370 select REGULATOR_ARM_SCMI 371 select COMMON_CLK_SCMI 372 select STM32_FIREWALL 373 help 374 This enables support for ARMv8 based STMicroelectronics 375 STM32 family, including: 376 - STM32MP21: 377 - STM32MP211, STM32MP213, STM32MP215. 378 - STM32MP23: 379 - STM32MP231, STM32MP233, STM32MP235. 380 - STM32MP25: 381 - STM32MP251, STM32MP253, STM32MP255 and STM32MP257. 382 383config ARCH_SYNQUACER 384 bool "Socionext SynQuacer SoC Family" 385 select IRQ_FASTEOI_HIERARCHY_HANDLERS 386 387config ARCH_TEGRA 388 bool "NVIDIA Tegra SoC Family" 389 select ARCH_HAS_RESET_CONTROLLER 390 select ARM_GIC_PM 391 select CLKSRC_MMIO 392 select TIMER_OF 393 select GPIOLIB 394 select PINCTRL 395 select PM 396 select PM_GENERIC_DOMAINS 397 select RESET_CONTROLLER 398 help 399 This enables support for the NVIDIA Tegra SoC family. 400 401config ARCH_TESLA_FSD 402 bool "Tesla platform" 403 depends on ARCH_EXYNOS 404 help 405 Support for ARMv8 based Tesla platforms. 406 407config ARCH_SPRD 408 bool "Spreadtrum SoC platform" 409 help 410 Support for Spreadtrum ARM based SoCs 411 412config ARCH_THUNDER 413 bool "Cavium Inc. Thunder SoC Family" 414 help 415 This enables support for Cavium's Thunder Family of SoCs. 416 417config ARCH_THUNDER2 418 bool "Cavium ThunderX2 Server Processors" 419 select GPIOLIB 420 help 421 This enables support for Cavium's ThunderX2 CN99XX family of 422 server processors. 423 424config ARCH_UNIPHIER 425 bool "Socionext UniPhier SoC Family" 426 select ARCH_HAS_RESET_CONTROLLER 427 select PINCTRL 428 select RESET_CONTROLLER 429 help 430 This enables support for Socionext UniPhier SoC family. 431 432config ARCH_VEXPRESS 433 bool "ARM Ltd Platforms" 434 select GPIOLIB 435 select PM 436 select PM_GENERIC_DOMAINS 437 help 438 This enables support for the ARM Ltd Platforms. 439 440config ARCH_VISCONTI 441 bool "Toshiba Visconti SoC Family" 442 select PINCTRL 443 select PINCTRL_VISCONTI 444 help 445 This enables support for Toshiba Visconti SoCs Family. 446 447config ARCH_XGENE 448 bool "AppliedMicro X-Gene SOC Family" 449 help 450 This enables support for AppliedMicro X-Gene SOC Family 451 452config ARCH_ZYNQMP 453 bool "Xilinx ZynqMP Family" 454 help 455 This enables support for Xilinx ZynqMP Family 456 457endmenu # "Platform selection" 458