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