choice
	prompt "Machine type"
	depends on MACH_VR41XX
	default TANBAC_TB022X

config CASIO_E55
	bool "CASIO CASSIOPEIA E-10/15/55/65"
	select DMA_NONCOHERENT
	select IRQ_CPU
	select ISA
	select SYS_SUPPORTS_32BIT_KERNEL
	select SYS_SUPPORTS_LITTLE_ENDIAN

config IBM_WORKPAD
	bool "IBM WorkPad z50"
	select DMA_NONCOHERENT
	select IRQ_CPU
	select ISA
	select SYS_SUPPORTS_32BIT_KERNEL
	select SYS_SUPPORTS_LITTLE_ENDIAN

config NEC_CMBVR4133
	bool "NEC CMB-VR4133"
	select DMA_NONCOHERENT
	select IRQ_CPU
	select HW_HAS_PCI
	select SYS_SUPPORTS_32BIT_KERNEL
	select SYS_SUPPORTS_LITTLE_ENDIAN

config TANBAC_TB022X
	bool "TANBAC VR4131 multichip module and TANBAC VR4131DIMM"
	select DMA_NONCOHERENT
	select IRQ_CPU
	select HW_HAS_PCI
	select SYS_SUPPORTS_32BIT_KERNEL
	select SYS_SUPPORTS_LITTLE_ENDIAN
	help
	  The TANBAC VR4131 multichip module(TB0225) and
	  the TANBAC VR4131DIMM(TB0229) are MIPS-based platforms
	  manufactured by TANBAC.
	  Please refer to <http://www.tanbac.co.jp/>
	  about VR4131 multichip module and VR4131DIMM.

config VICTOR_MPC30X
	bool "Victor MP-C303/304"
	select DMA_NONCOHERENT
	select IRQ_CPU
	select HW_HAS_PCI
	select PCI_VR41XX
	select SYS_SUPPORTS_32BIT_KERNEL
	select SYS_SUPPORTS_LITTLE_ENDIAN

config ZAO_CAPCELLA
	bool "ZAO Networks Capcella"
	select DMA_NONCOHERENT
	select IRQ_CPU
	select HW_HAS_PCI
	select PCI_VR41XX
	select SYS_SUPPORTS_32BIT_KERNEL
	select SYS_SUPPORTS_LITTLE_ENDIAN

endchoice

config ROCKHOPPER
	bool "Support for Rockhopper base board"
	depends on NEC_CMBVR4133
	select PCI_VR41XX
	select I8259
	select HAVE_STD_PC_SERIAL_PORT

choice
	prompt "Base board type"
	depends on TANBAC_TB022X
	default TANBAC_TB0287

config TANBAC_TB0219
	bool "TANBAC DIMM Evaluation Kit(TB0219)"
	select GPIO_VR41XX
	select PCI_VR41XX
	help
	  The TANBAC DIMM Evaluation Kit(TB0219) is a MIPS-based platform
	  manufactured by TANBAC.
	  Please refer to <http://www.tanbac.co.jp/> about DIMM Evaluation Kit.

config TANBAC_TB0226
	bool "TANBAC Mbase(TB0226)"
	select GPIO_VR41XX
	select PCI_VR41XX
	help
	  The TANBAC Mbase(TB0226) is a MIPS-based platform
	  manufactured by TANBAC.
	  Please refer to <http://www.tanbac.co.jp/> about Mbase.

config TANBAC_TB0287
	bool "TANBAC Mini-ITX DIMM base(TB0287)"
	select PCI_VR41XX
	help
	  The TANBAC Mini-ITX DIMM base(TB0287) is a MIPS-based platform
	  manufactured by TANBAC.
	  Please refer to <http://www.tanbac.co.jp/> about Mini-ITX DIMM base.

endchoice

config PCI_VR41XX
	bool "Add PCI control unit support of NEC VR4100 series"
	depends on MACH_VR41XX && HW_HAS_PCI
	default y
	select PCI
