menu "Platform selection"

config ARCH_BCM_IPROC
	bool "Broadcom iProc SoC Family"
	help
	  This enables support for Broadcom iProc based SoCs

config ARCH_BERLIN
	bool "Marvell Berlin SoC Family"
	select ARCH_REQUIRE_GPIOLIB
	select DW_APB_ICTL
	select PINCTRL
	help
	  This enables support for Marvell Berlin SoC Family

config ARCH_EXYNOS
	bool
	help
	  This enables support for Samsung Exynos SoC family

config ARCH_EXYNOS7
	bool "ARMv8 based Samsung Exynos7"
	select ARCH_EXYNOS
	select COMMON_CLK_SAMSUNG
	select HAVE_S3C2410_WATCHDOG if WATCHDOG
	select HAVE_S3C_RTC if RTC_CLASS
	select PINCTRL
	select PINCTRL_EXYNOS

	help
	  This enables support for Samsung Exynos7 SoC family

config ARCH_LAYERSCAPE
	bool "ARMv8 based Freescale Layerscape SoC family"
	help
	  This enables support for the Freescale Layerscape SoC family.

config ARCH_HISI
	bool "Hisilicon SoC Family"
	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_QCOM
	bool "Qualcomm Platforms"
	select PINCTRL
	help
	  This enables support for the ARMv8 based Qualcomm chipsets.

config ARCH_ROCKCHIP
	bool "Rockchip Platforms"
	select ARCH_HAS_RESET_CONTROLLER
	select ARCH_REQUIRE_GPIOLIB
	select PINCTRL
	select PINCTRL_ROCKCHIP
	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_GENERIC_DOMAINS if PM
	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_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 ARCH_REQUIRE_GPIOLIB
	select CLKDEV_LOOKUP
	select CLKSRC_MMIO
	select CLKSRC_OF
	select GENERIC_CLOCKEVENTS
	select HAVE_CLK
	select PINCTRL
	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 PINCTRL
	help
	  This enables support for Socionext UniPhier SoC family.

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

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
