#
# USB/ATM DSL configuration
#

menu "USB DSL modem support"
	depends on USB

config USB_ATM
	tristate "USB DSL modem support"
	depends on USB && ATM
	select CRC32
	default n
	help
	  Say Y here if you want to connect a USB Digital Subscriber Line (DSL)
	  modem to your computer's USB port.  You will then need to choose your
	  modem from the list below.

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

config USB_SPEEDTOUCH
	tristate "Speedtouch USB support"
	depends on USB_ATM
	select FW_LOADER
	help
	  Say Y here if you have an SpeedTouch USB or SpeedTouch 330
	  modem.  In order to use your modem you will need to install the 
	  two parts of the firmware, extracted by the user space tools; see
	  <http://www.linux-usb.org/SpeedTouch/> for details.

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

config USB_CXACRU
	tristate "Conexant AccessRunner USB support"
	depends on USB_ATM
	select FW_LOADER
	help
	  Say Y here if you have an ADSL USB modem based on the Conexant
	  AccessRunner chipset.  In order to use your modem you will need to
	  install the firmware, extracted by the user space tools; see
	  <http://accessrunner.sourceforge.net/> for details.

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

config USB_XUSBATM
	tristate "Other USB DSL modem support"
	depends on USB_ATM
	help
	  Say Y here if you have a DSL USB modem not explicitly supported by
	  another USB DSL drivers.  In order to use your modem you will need to
	  pass the vendor ID, product ID, and endpoint numbers for transmission
	  and reception as module parameters.  You may need to initialize the
	  the modem using a user space utility (a firmware loader for example).

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

endmenu
