menuconfig ARCH_MMP
	bool "Marvell PXA168/910/MMP2"
	depends on ARCH_MULTI_V5 || ARCH_MULTI_V7
	select GPIO_PXA
	select GPIOLIB
	select PINCTRL
	select PLAT_PXA
	help
	  Support for Marvell's PXA168/PXA910(MMP) and MMP2 processor line.

if ARCH_MMP

menu "Marvell PXA168/910/MMP2 Implementations"

if ATAGS

config MACH_ASPENITE
	bool "Marvell's PXA168 Aspenite Development Board"
	depends on ARCH_MULTI_V5
	select CPU_PXA168
	help
	  Say 'Y' here if you want to support the Marvell PXA168-based
	  Aspenite Development Board.

config MACH_ZYLONITE2
	bool "Marvell's PXA168 Zylonite2 Development Board"
	depends on ARCH_MULTI_V5
	select CPU_PXA168
	help
	  Say 'Y' here if you want to support the Marvell PXA168-based
	  Zylonite2 Development Board.

config MACH_AVENGERS_LITE
	bool "Marvell's PXA168 Avengers Lite Development Board"
	depends on ARCH_MULTI_V5
	select CPU_PXA168
	help
	  Say 'Y' here if you want to support the Marvell PXA168-based
	  Avengers Lite Development Board.

config MACH_TAVOREVB
	bool "Marvell's PXA910 TavorEVB Development Board"
	depends on ARCH_MULTI_V5
	select CPU_PXA910
	help
	  Say 'Y' here if you want to support the Marvell PXA910-based
	  TavorEVB Development Board.

config MACH_TTC_DKB
	bool "Marvell's PXA910 TavorEVB Development Board"
	depends on ARCH_MULTI_V5
	select CPU_PXA910
	help
	  Say 'Y' here if you want to support the Marvell PXA910-based
	  TTC_DKB Development Board.

config MACH_BROWNSTONE
	bool "Marvell's Brownstone Development Platform"
	depends on ARCH_MULTI_V7
	select CPU_MMP2
	help
	  Say 'Y' here if you want to support the Marvell MMP2-based
	  Brown Development Platform.
	  MMP2-based board can't be co-existed with PXA168-based &
	  PXA910-based development board. Since MMP2 is compatible to
	  ARMv7 architecture.

config MACH_FLINT
	bool "Marvell's Flint Development Platform"
	depends on ARCH_MULTI_V7
	select CPU_MMP2
	help
	  Say 'Y' here if you want to support the Marvell MMP2-based
	  Flint Development Platform.
	  MMP2-based board can't be co-existed with PXA168-based &
	  PXA910-based development board. Since MMP2 is compatible to
	  ARMv7 architecture.

config MACH_MARVELL_JASPER
	bool "Marvell's Jasper Development Platform"
	depends on ARCH_MULTI_V7
	select CPU_MMP2
	help
	  Say 'Y' here if you want to support the Marvell MMP2-base
	  Jasper Development Platform.
	  MMP2-based board can't be co-existed with PXA168-based &
	  PXA910-based development board. Since MMP2 is compatible to
	  ARMv7 architecture.

config MACH_TETON_BGA
	bool "Marvell's PXA168 Teton BGA Development Board"
	depends on ARCH_MULTI_V5
	select CPU_PXA168
	help
	  Say 'Y' here if you want to support the Marvell PXA168-based
	  Teton BGA Development Board.

config MACH_GPLUGD
	bool "Marvell's PXA168 GuruPlug Display (gplugD) Board"
	depends on ARCH_MULTI_V5
	select CPU_PXA168
	help
	  Say 'Y' here if you want to support the Marvell PXA168-based
	  GuruPlug Display (gplugD) Board
endif

config MACH_MMP_DT
	bool "Support MMP (ARMv5) platforms from device tree"
	depends on ARCH_MULTI_V5
	select PINCTRL
	select PINCTRL_SINGLE
	select COMMON_CLK
	select ARCH_HAS_RESET_CONTROLLER
	select CPU_MOHAWK
	help
	  Include support for Marvell MMP2 based platforms using
	  the device tree. Needn't select any other machine while
	  MACH_MMP_DT is enabled.

config MACH_MMP2_DT
	bool "Support MMP2 (ARMv7) platforms from device tree"
	depends on ARCH_MULTI_V7
	select PINCTRL
	select PINCTRL_SINGLE
	select ARCH_HAS_RESET_CONTROLLER
	select CPU_PJ4
	help
	  Include support for Marvell MMP2 based platforms using
	  the device tree.

endmenu

config CPU_PXA168
	bool
	select CPU_MOHAWK
	help
	  Select code specific to PXA168

config CPU_PXA910
	bool
	select CPU_MOHAWK
	help
	  Select code specific to PXA910

config CPU_MMP2
	bool
	select CPU_PJ4
	help
	  Select code specific to MMP2. MMP2 is ARMv7 compatible.

config USB_EHCI_MV_U2O
        bool "EHCI support for PXA USB OTG controller"
	depends on USB_EHCI_MV
	help
	  Enables support for OTG controller which can be switched to host mode.

config MMP_SRAM
	bool

endif
