# SPDX-License-Identifier: GPL-2.0
menuconfig ARCH_U8500
	bool "ST-Ericsson U8500 Series"
	depends on ARCH_MULTI_V7 && MMU
	select AB8500_CORE
	select ABX500_CORE
	select ARM_AMBA
	select ARM_ERRATA_754322
	select ARM_ERRATA_764369 if SMP
	select ARM_GIC
	select CACHE_L2X0
	select CLKSRC_NOMADIK_MTU
	select GPIOLIB
	select HAVE_ARM_SCU if SMP
	select HAVE_ARM_TWD if SMP
	select PINCTRL
	select PINCTRL_ABX500
	select PINCTRL_NOMADIK
	select PL310_ERRATA_753970 if CACHE_L2X0
	help
	  Support for ST-Ericsson's Ux500 architecture

if ARCH_U8500

config UX500_SOC_DB8500
	bool
	select MFD_DB8500_PRCMU
	select PINCTRL_DB8500
	select PINCTRL_DB8540
	select PINCTRL_AB8500
	select PINCTRL_AB8505
	select PINCTRL_AB9540
	select PINCTRL_AB8540
	select REGULATOR
	select REGULATOR_DB8500_PRCMU
	select CLKSRC_DBX500_PRCMU
	select PM_GENERIC_DOMAINS if PM

config MACH_MOP500
	bool "U8500 Development platform, MOP500 versions"
	select I2C
	select I2C_NOMADIK
	select REGULATOR
	select REGULATOR_FIXED_VOLTAGE
	select SOC_BUS
	select UX500_SOC_DB8500
	help
	  Include support for the MOP500 development platform.

config MACH_HREFV60
	bool "U8500 Development platform, HREFv60 version"
	select MACH_MOP500
	help
	  Include support for the HREFv60 new development platform.
	  Includes HREFv70, v71 etc.

config MACH_SNOWBALL
	bool "U8500 Snowball platform"
	select MACH_MOP500
	help
	  Include support for the snowball development platform.

config UX500_AUTO_PLATFORM
	def_bool y
	select MACH_MOP500
	help
	  At least one platform needs to be selected in order to build
	  a working kernel. If everything else is disabled, this
	  automatically enables MACH_MOP500.

config UX500_DEBUG_UART
	int "Ux500 UART to use for low-level debug"
	default 2
	help
	  Choose the UART on which kernel low-level debug messages should be
	  output.

endif
