# SPDX-License-Identifier: GPL-2.0-only menu "Platform selection" config ARCH_ACTIONS bool "Actions Semi Platforms" select OWL_TIMER select PINCTRL help This enables support for the Actions Semiconductor S900 SoC family. config ARCH_SUNXI bool "Allwinner sunxi 64-bit SoC Family" select ARCH_HAS_RESET_CONTROLLER select GENERIC_IRQ_CHIP select IRQ_DOMAIN_HIERARCHY select IRQ_FASTEOI_HIERARCHY_HANDLERS select PINCTRL select RESET_CONTROLLER select SUN4I_TIMER help This enables support for Allwinner sunxi based SoCs like the A64. config ARCH_ALPINE bool "Annapurna Labs Alpine platform" select ALPINE_MSI if PCI help This enables support for the Annapurna Labs Alpine Soc family. config ARCH_APPLE bool "Apple Silicon SoC family" select APPLE_AIC help This enables support for Apple's in-house ARM SoC family, starting with the Apple M1. config ARCH_BCM2835 bool "Broadcom BCM2835 family" select TIMER_OF select GPIOLIB select MFD_CORE select PINCTRL select PINCTRL_BCM2835 select ARM_AMBA select ARM_GIC select ARM_TIMER_SP804 help This enables support for the Broadcom BCM2837 and BCM2711 SoC. These SoCs are used in the Raspberry Pi 3 and 4 devices. config ARCH_BCM4908 bool "Broadcom BCM4908 family" select GPIOLIB help This enables support for the Broadcom BCM4906, BCM4908 and BCM49408 SoCs. These SoCs use Brahma-B53 cores and can be found in home routers. config ARCH_BCM_IPROC bool "Broadcom iProc SoC Family" select COMMON_CLK_IPROC select GPIOLIB select PINCTRL help This enables support for Broadcom iProc based SoCs config ARCH_BERLIN bool "Marvell Berlin SoC Family" select DW_APB_ICTL select DW_APB_TIMER_OF select GPIOLIB select PINCTRL help This enables support for Marvell Berlin SoC Family config ARCH_BITMAIN bool "Bitmain SoC Platforms" help This enables support for the Bitmain SoC Family. config ARCH_BRCMSTB bool "Broadcom Set-Top-Box SoCs" select ARCH_HAS_RESET_CONTROLLER select GENERIC_IRQ_CHIP select PINCTRL help This enables support for Broadcom's ARMv8 Set Top Box SoCs config ARCH_EXYNOS bool "ARMv8 based Samsung Exynos SoC family" select COMMON_CLK_SAMSUNG select CLKSRC_EXYNOS_MCT select EXYNOS_PM_DOMAINS if PM_GENERIC_DOMAINS select EXYNOS_PMU select PINCTRL select PINCTRL_EXYNOS select PM_GENERIC_DOMAINS if PM select SOC_SAMSUNG help This enables support for ARMv8 based Samsung Exynos SoC family. config ARCH_SPARX5 bool "ARMv8 based Microchip Sparx5 SoC family" select PINCTRL select DW_APB_TIMER_OF help This enables support for the Microchip Sparx5 ARMv8-based SoC family of TSN-capable gigabit switches. The SparX-5 Ethernet switch family provides a rich set of switching features such as advanced TCAM-based VLAN and QoS processing enabling delivery of differentiated services, and security through TCAM-based frame processing using versatile content aware processor (VCAP). config ARCH_K3 bool "Texas Instruments Inc. K3 multicore SoC architecture" select PM_GENERIC_DOMAINS if PM select MAILBOX select SOC_TI select TI_MESSAGE_MANAGER select TI_SCI_PROTOCOL select TI_SCI_INTR_IRQCHIP select TI_SCI_INTA_IRQCHIP select TI_K3_SOCINFO help This enables support for Texas Instruments' K3 multicore SoC architecture. config ARCH_LAYERSCAPE bool "ARMv8 based Freescale Layerscape SoC family" select EDAC_SUPPORT help This enables support for the Freescale Layerscape SoC family. config ARCH_LG1K bool "LG Electronics LG1K SoC Family" help This enables support for LG Electronics LG1K SoC Family config ARCH_HISI bool "Hisilicon SoC Family" select ARM_TIMER_SP804 select HISILICON_IRQ_MBIGEN if PCI select PINCTRL help This enables support for Hisilicon ARMv8 SoC family config ARCH_KEEMBAY bool "Keem Bay SoC" help This enables support for Intel Movidius SoC code-named Keem Bay. config ARCH_MEDIATEK bool "MediaTek SoC Family" select ARM_GIC select PINCTRL select MTK_TIMER help This enables support for MediaTek MT27xx, MT65xx, MT76xx & MT81xx ARMv8 SoCs config ARCH_MESON bool "Amlogic Platforms" help This enables support for the arm64 based Amlogic SoCs such as the s905, S905X/D, S912, A113X/D or S905X/D2 config ARCH_MVEBU bool "Marvell EBU SoC Family" select ARMADA_AP806_SYSCON select ARMADA_CP110_SYSCON select ARMADA_37XX_CLK select GPIOLIB select GPIOLIB_IRQCHIP select MVEBU_GICP select MVEBU_ICU select MVEBU_ODMI select MVEBU_PIC select MVEBU_SEI select OF_GPIO select PINCTRL select PINCTRL_ARMADA_37XX select PINCTRL_ARMADA_AP806 select PINCTRL_ARMADA_CP110 help This enables support for Marvell EBU familly, including: - Armada 3700 SoC Family - Armada 7K SoC Family - Armada 8K SoC Family config ARCH_MXC bool "ARMv8 based NXP i.MX SoC family" select ARM64_ERRATUM_843419 select ARM64_ERRATUM_845719 if COMPAT select IMX_GPCV2 select IMX_GPCV2_PM_DOMAINS select PM select PM_GENERIC_DOMAINS select SOC_BUS select TIMER_IMX_SYS_CTR help This enables support for the ARMv8 based SoCs in the NXP i.MX family. config ARCH_QCOM bool "Qualcomm Platforms" select GPIOLIB select PINCTRL help This enables support for the ARMv8 based Qualcomm chipsets. config ARCH_REALTEK bool "Realtek Platforms" select RESET_CONTROLLER help This enables support for the ARMv8 based Realtek chipsets, like the RTD1295. config ARCH_RENESAS bool "Renesas SoC Platforms" select GPIOLIB select PINCTRL select SOC_BUS help This enables support for the ARMv8 based Renesas SoCs. config ARCH_ROCKCHIP bool "Rockchip Platforms" select ARCH_HAS_RESET_CONTROLLER select PINCTRL select PM select ROCKCHIP_TIMER help This enables support for the ARMv8 based Rockchip chipsets, like the RK3368. config ARCH_S32 bool "NXP S32 SoC Family" help This enables support for the NXP S32 family of processors. config ARCH_SEATTLE bool "AMD Seattle SoC Family" help This enables support for AMD Seattle SOC Family config ARCH_INTEL_SOCFPGA bool "Intel's SoCFPGA ARMv8 Families" help This enables support for Intel's SoCFPGA ARMv8 families: Stratix 10 (ex. Altera), Agilex and eASIC N5X. config ARCH_SYNQUACER bool "Socionext SynQuacer SoC Family" select IRQ_FASTEOI_HIERARCHY_HANDLERS config ARCH_TEGRA bool "NVIDIA Tegra SoC Family" select ARCH_HAS_RESET_CONTROLLER select ARM_GIC_PM select CLKSRC_MMIO select TIMER_OF select GPIOLIB select PINCTRL select PM select PM_GENERIC_DOMAINS select RESET_CONTROLLER help This enables support for the NVIDIA Tegra SoC family. config ARCH_TESLA_FSD bool "ARMv8 based Tesla platform" depends on ARCH_EXYNOS help Support for ARMv8 based Tesla platforms. config ARCH_SPRD bool "Spreadtrum SoC platform" help Support for Spreadtrum ARM based SoCs config ARCH_THUNDER bool "Cavium Inc. Thunder SoC Family" help This enables support for Cavium's Thunder Family of SoCs. config ARCH_THUNDER2 bool "Cavium ThunderX2 Server Processors" select GPIOLIB help This enables support for Cavium's ThunderX2 CN99XX family of server processors. config ARCH_UNIPHIER bool "Socionext UniPhier SoC Family" select ARCH_HAS_RESET_CONTROLLER select PINCTRL select RESET_CONTROLLER help This enables support for Socionext UniPhier SoC family. config ARCH_VEXPRESS bool "ARMv8 software model (Versatile Express)" select GPIOLIB select PM select PM_GENERIC_DOMAINS help This enables support for the ARMv8 software model (Versatile Express). config ARCH_VISCONTI bool "Toshiba Visconti SoC Family" select PINCTRL select PINCTRL_VISCONTI help This enables support for Toshiba Visconti SoCs Family. config ARCH_XGENE bool "AppliedMicro X-Gene SOC Family" help This enables support for AppliedMicro X-Gene SOC Family config ARCH_ZYNQMP bool "Xilinx ZynqMP Family" help This enables support for Xilinx ZynqMP Family endmenu