if ARCH_MMP

menu "Marvell PXA168/910/MMP2 Implmentations"

config MACH_ASPENITE
	bool "Marvell's PXA168 Aspenite Development Board"
	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"
	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"
	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"
	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"
	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 !CPU_MOHAWK
	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 !CPU_MOHAWK
	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 !CPU_MOHAWK
	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"
	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"
	select CPU_PXA168
	help
	  Say 'Y' here if you want to support the Marvell PXA168-based
	  GuruPlug Display (gplugD) Board

config MACH_MMP_DT
	bool "Support MMP (ARMv5) platforms from device tree"
	select CPU_PXA168
	select CPU_PXA910
	select USE_OF
	select PINCTRL
	select PINCTRL_SINGLE
	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 !CPU_MOHAWK
	select CPU_MMP2
	select USE_OF
	select PINCTRL
	select PINCTRL_SINGLE
	help
	  Include support for Marvell MMP2 based platforms using
	  the device tree.

endmenu

config CPU_PXA168
	bool
	select COMMON_CLK
	select CPU_MOHAWK
	help
	  Select code specific to PXA168

config CPU_PXA910
	bool
	select COMMON_CLK
	select CPU_MOHAWK
	help
	  Select code specific to PXA910

config CPU_MMP2
	bool
	select COMMON_CLK
	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
