config ARCH_MVEBU
	bool "Marvell Engineering Business Unit (MVEBU) SoCs" if (ARCH_MULTI_V7 || ARCH_MULTI_V5)
	select ARCH_SUPPORTS_BIG_ENDIAN
	select CLKSRC_MMIO
	select GENERIC_IRQ_CHIP
	select PINCTRL
	select PLAT_ORION
	select SOC_BUS
	select MVEBU_MBUS
	select ZONE_DMA if ARM_LPAE
	select ARCH_REQUIRE_GPIOLIB
	select PCI_QUIRKS if PCI

if ARCH_MVEBU

menu "Marvell EBU SoC variants"

config MACH_MVEBU_V7
	bool
	select ARMADA_370_XP_TIMER
	select CACHE_L2X0

config MACH_ARMADA_370
	bool "Marvell Armada 370 boards" if ARCH_MULTI_V7
	select ARMADA_370_CLK
	select CPU_PJ4B
	select MACH_MVEBU_V7
	select PINCTRL_ARMADA_370
	help
	  Say 'Y' here if you want your kernel to support boards based
	  on the Marvell Armada 370 SoC with device tree.

config MACH_ARMADA_375
	bool "Marvell Armada 375 boards" if ARCH_MULTI_V7
	select ARM_ERRATA_720789
	select ARM_ERRATA_753970
	select ARM_GIC
	select ARMADA_375_CLK
	select HAVE_ARM_SCU
	select HAVE_ARM_TWD if SMP
	select HAVE_SMP
	select MACH_MVEBU_V7
	select PINCTRL_ARMADA_375
	help
	  Say 'Y' here if you want your kernel to support boards based
	  on the Marvell Armada 375 SoC with device tree.

config MACH_ARMADA_38X
	bool "Marvell Armada 380/385 boards" if ARCH_MULTI_V7
	select ARM_ERRATA_720789
	select ARM_ERRATA_753970
	select ARM_GIC
	select ARMADA_38X_CLK
	select HAVE_ARM_SCU
	select HAVE_ARM_TWD if SMP
	select HAVE_SMP
	select MACH_MVEBU_V7
	select PINCTRL_ARMADA_38X
	help
	  Say 'Y' here if you want your kernel to support boards based
	  on the Marvell Armada 380/385 SoC with device tree.

config MACH_ARMADA_XP
	bool "Marvell Armada XP boards" if ARCH_MULTI_V7
	select ARMADA_XP_CLK
	select CPU_PJ4B
	select MACH_MVEBU_V7
	select PINCTRL_ARMADA_XP
	help
	  Say 'Y' here if you want your kernel to support boards based
	  on the Marvell Armada XP SoC with device tree.

config MACH_DOVE
	bool "Marvell Dove boards" if ARCH_MULTI_V7
	select CACHE_L2X0
	select CPU_PJ4
	select DOVE_CLK
	select ORION_IRQCHIP
	select ORION_TIMER
	select PINCTRL_DOVE
	help
	  Say 'Y' here if you want your kernel to support the
	  Marvell Dove using flattened device tree.

config MACH_KIRKWOOD
	bool "Marvell Kirkwood boards" if ARCH_MULTI_V5
	select ARCH_HAS_CPUFREQ
	select ARCH_REQUIRE_GPIOLIB
	select CPU_FEROCEON
	select KIRKWOOD_CLK
	select ORION_IRQCHIP
	select ORION_TIMER
	select PCI
	select PCI_QUIRKS
	select PINCTRL_KIRKWOOD
	help
	  Say 'Y' here if you want your kernel to support boards based
	  on the Marvell Kirkwood device tree.

endmenu

endif
