menu "Platform selection"

config ARCH_SUNXI
	bool "Allwinner sunxi 64-bit SoC Family"
	select GENERIC_IRQ_CHIP
	select PINCTRL
	select PINCTRL_SUN50I_A64
	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_BCM2835
	bool "Broadcom BCM2835 family"
	select CLKSRC_OF
	select GPIOLIB
	select PINCTRL
	select PINCTRL_BCM2835
	select ARM_AMBA
	select ARM_TIMER_SP804
	select HAVE_ARM_ARCH_TIMER
	help
	  This enables support for the Broadcom BCM2837 SoC.
	  This SoC is used in the Raspberry Pi 3 device.

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 GPIOLIB
	select PINCTRL
	help
	  This enables support for Marvell Berlin SoC Family

config ARCH_BRCMSTB
	bool "Broadcom Set-Top-Box SoCs"
	select BRCMSTB_L2_IRQ
	select GENERIC_IRQ_CHIP
	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 HAVE_S3C2410_WATCHDOG if WATCHDOG
	select HAVE_S3C_RTC if RTC_CLASS
	select PINCTRL
	select PINCTRL_EXYNOS
	select SOC_SAMSUNG
	help
	  This enables support for ARMv8 based Samsung Exynos SoC family.

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_MEDIATEK
	bool "Mediatek MT65xx & MT81xx ARMv8 SoC"
	select ARM_GIC
	select PINCTRL
	select MTK_TIMER
	help
	  Support for Mediatek MT65xx & MT81xx ARMv8 SoCs

config ARCH_MESON
	bool "Amlogic Platforms"
	select PINCTRL
	select PINCTRL_MESON
	select COMMON_CLK_AMLOGIC
	select COMMON_CLK_GXBB
	help
	  This enables support for the Amlogic S905 SoCs.

config ARCH_MVEBU
	bool "Marvell EBU SoC Family"
	select ARMADA_AP806_SYSCON
	select ARMADA_CP110_SYSCON
	select ARMADA_37XX_CLK
	select MVEBU_ODMI
	select MVEBU_PIC
	help
	  This enables support for Marvell EBU familly, including:
	   - Armada 3700 SoC Family
	   - Armada 7K SoC Family
	   - Armada 8K SoC Family

config ARCH_QCOM
	bool "Qualcomm Platforms"
	select PINCTRL
	select CLKDEV_LOOKUP
	select HAVE_CLK
	select HAVE_CLK_PREPARE
	select SOC_BUS
	select PM_OPP
	select MFD_CORE
	select SND_SOC_COMPRESS
	select SND_HWDEP
	help
	  This enables support for the ARMv8 based Qualcomm chipsets.

config ARCH_SDM845
	bool "Enable Support for Qualcomm Technologies Inc. SDM845"
	depends on ARCH_QCOM
	select COMMON_CLK
	select COMMON_CLK_QCOM
	select QCOM_GDSC
	help
	  This enables support for the SDM845 chipset. If you do not
	  wish to build a kernel that runs on this chipset, say 'N' here.

config ARCH_SDM670
	bool "Enable Support for Qualcomm Technologies Inc. SDM670"
	depends on ARCH_QCOM
	select COMMON_CLK
	select COMMON_CLK_QCOM
	select QCOM_GDSC
	help
	  This enables support for the SDM670 chipset. If you do not
	  wish to build a kernel that runs on this chipset, say 'N' here.

config ARCH_MSM8953
	bool "Enable Support for Qualcomm Technologies Inc. MSM8953"
	depends on ARCH_QCOM
	select CPU_FREQ_QCOM
	select COMMON_CLK_MSM
	help
	  This enables support for the MSM8953 chipset. If you do not
	  wish to build a kernel that runs on this chipset, say 'N' here.

config ARCH_MSM8937
	bool "Enable Support for Qualcomm Technologies Inc. MSM8937"
	depends on ARCH_QCOM
	select CPU_FREQ_QCOM
	select COMMON_CLK_MSM
	help
	  This enables support for the MSM8937 chipset. If you do not
	  wish to build a kernel that runs on this chipset, say 'N' here.

config ARCH_SDM450
	bool "Enable Support for Qualcomm Technologies Inc. SDM450"
	depends on ARCH_QCOM
	select CPU_FREQ_QCOM
	select COMMON_CLK_MSM
	help
	  This enables support for the sdm450 chipset. If you do not
	  wish to build a kernel that runs on this chipset, say 'N' here.

config ARCH_SDM632
	bool "Enable Support for Qualcomm Technologies Inc. SDM632"
	depends on ARCH_QCOM
	select CPU_FREQ_QCOM
	select COMMON_CLK_MSM
	help
	  This enables support for the sdm632 chipset. If you do not
	  wish to build a kernel that runs on this chipset, say 'N' here.

config ARCH_ROCKCHIP
	bool "Rockchip Platforms"
	select ARCH_HAS_RESET_CONTROLLER
	select GPIOLIB
	select PINCTRL
	select PINCTRL_ROCKCHIP
	select ROCKCHIP_TIMER
	help
	  This enables support for the ARMv8 based Rockchip chipsets,
	  like the RK3368.

config ARCH_SEATTLE
	bool "AMD Seattle SoC Family"
	help
	  This enables support for AMD Seattle SOC Family

config ARCH_SHMOBILE
	bool

config ARCH_RENESAS
	bool "Renesas SoC Platforms"
	select ARCH_SHMOBILE
	select PINCTRL
	select PM
	select PM_GENERIC_DOMAINS
	select RENESAS_IRQC
	help
	  This enables support for the ARMv8 based Renesas SoCs.

config ARCH_R8A7795
	bool "Renesas R-Car H3 SoC Platform"
	depends on ARCH_RENESAS
	help
	  This enables support for the Renesas R-Car H3 SoC.

config ARCH_R8A7796
	bool "Renesas R-Car M3-W SoC Platform"
	depends on ARCH_RENESAS
	help
	  This enables support for the Renesas R-Car M3-W SoC.

config ARCH_STRATIX10
	bool "Altera's Stratix 10 SoCFPGA Family"
	help
	  This enables support for Altera's Stratix 10 SoCFPGA Family.

config ARCH_TEGRA
	bool "NVIDIA Tegra SoC Family"
	select ARCH_HAS_RESET_CONTROLLER
	select CLKDEV_LOOKUP
	select CLKSRC_MMIO
	select CLKSRC_OF
	select GENERIC_CLOCKEVENTS
	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_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_UNIPHIER
	bool "Socionext UniPhier SoC Family"
	select ARCH_HAS_RESET_CONTROLLER
	select PINCTRL
	help
	  This enables support for Socionext UniPhier SoC family.

config ARCH_VEXPRESS
	bool "ARMv8 software model (Versatile Express)"
	select COMMON_CLK_VERSATILE
	select GPIOLIB
	select PM
	select PM_GENERIC_DOMAINS
	select POWER_RESET_VEXPRESS
	select VEXPRESS_CONFIG
	help
	  This enables support for the ARMv8 software model (Versatile
	  Express).

config ARCH_VULCAN
	bool "Broadcom Vulcan SOC Family"
	select GPIOLIB
	help
	  This enables support for Broadcom Vulcan SoC Family

config ARCH_XGENE
	bool "AppliedMicro X-Gene SOC Family"
	help
	  This enables support for AppliedMicro X-Gene SOC Family

config ARCH_ZX
	bool "ZTE ZX SoC Family"
	help
	  This enables support for ZTE ZX SoC Family

config ARCH_ZYNQMP
	bool "Xilinx ZynqMP Family"
	help
	  This enables support for Xilinx ZynqMP Family

endmenu
