#
# C2 port devices
#

menuconfig C2PORT
	tristate "Silicon Labs C2 port support (EXPERIMENTAL)"
	depends on EXPERIMENTAL
	default no
	help
	  This option enables support for Silicon Labs C2 port used to
	  program Silicon micro controller chips (and other 8051 compatible).

	  If your board have no such micro controllers you don't need this
	  interface at all.

	  To compile this driver as a module, choose M here: the module will
	  be called c2port_core. Note that you also need a client module
	  usually called c2port-*.

	  If you are not sure, say N here.

if C2PORT

config C2PORT_DURAMAR_2150
	tristate "C2 port support for Eurotech's Duramar 2150 (EXPERIMENTAL)"
	depends on X86 && C2PORT
	default no
	help
	  This option enables C2 support for the Eurotech's Duramar 2150
	  on board micro controller.

	  To compile this driver as a module, choose M here: the module will
	  be called c2port-duramar2150.

endif # C2PORT
