menu "Platform selection"

config ARCH_ACTIONS
	bool "Actions Semi Platforms"
	select OWL_TIMER
	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 PINCTRL
	select RESET_CONTROLLER
	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 TIMER_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 EXYNOS_PM_DOMAINS if PM_GENERIC_DOMAINS
	select EXYNOS_PMU
	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 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"
	select PINCTRL
	select PINCTRL_MESON
	select COMMON_CLK_AMLOGIC
	select COMMON_CLK_GXBB
	select COMMON_CLK_AXG
	select MESON_IRQ_GPIO
	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 GPIOLIB
	select GPIOLIB_IRQCHIP
	select MVEBU_GICP
	select MVEBU_ICU
	select MVEBU_ODMI
	select MVEBU_PIC
	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_QCOM
	bool "Qualcomm Platforms"
	select GPIOLIB
	select PINCTRL
	help
	  This enables support for the ARMv8 based Qualcomm chipsets.

config ARCH_REALTEK
	bool "Realtek Platforms"
	help
	  This enables support for the ARMv8 based Realtek chipsets,
	  like the RTD1295.

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_SYNQUACER
	bool "Socionext SynQuacer SoC Family"

config ARCH_RENESAS
	bool "Renesas SoC Platforms"
	select ARCH_SHMOBILE
	select PINCTRL
	select PM
	select PM_GENERIC_DOMAINS
	select RENESAS_IRQC
	select SOC_BUS
	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_R8A77965
	bool "Renesas R-Car M3-N SoC Platform"
	depends on ARCH_RENESAS
	help
	  This enables support for the Renesas R-Car M3-N SoC.

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

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

config ARCH_R8A77995
	bool "Renesas R-Car D3 SoC Platform"
	depends on ARCH_RENESAS
	help
	  This enables support for the Renesas R-Car D3 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 TIMER_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_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
	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
	def_bool n

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"
	select PINCTRL
	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
