config RT2X00
	tristate "Ralink driver support"
	depends on MAC80211 && WLAN_80211 && EXPERIMENTAL
	---help---
	  This will enable the experimental support for the Ralink drivers,
	  developed in the rt2x00 project <http://rt2x00.serialmonkey.com>.

	  These drivers will make use of the Devicescape ieee80211 stack.

	  When building one of the individual drivers, the rt2x00 library
	  will also be created. That library (when the driver is built as
	  a module) will be called "rt2x00lib.ko".

config RT2X00_LIB
	tristate
	depends on RT2X00

config RT2X00_LIB_PCI
	tristate
	depends on RT2X00
	select RT2X00_LIB

config RT2X00_LIB_USB
	tristate
	depends on RT2X00
	select RT2X00_LIB

config RT2X00_LIB_FIRMWARE
	boolean
	depends on RT2X00_LIB
	select CRC_ITU_T
	select FW_LOADER

config RT2X00_LIB_RFKILL
	boolean
	depends on RT2X00_LIB
	select RFKILL
	select INPUT_POLLDEV

config RT2400PCI
	tristate "Ralink rt2400 pci/pcmcia support"
	depends on RT2X00 && PCI
	select RT2X00_LIB_PCI
	select EEPROM_93CX6
	---help---
	  This is an experimental driver for the Ralink rt2400 wireless chip.

	  When compiled as a module, this driver will be called "rt2400pci.ko".

config RT2400PCI_RFKILL
	bool "RT2400 rfkill support"
	depends on RT2400PCI
	select RT2X00_LIB_RFKILL
	---help---
	  This adds support for integrated rt2400 devices that feature a
	  hardware button to control the radio state.
	  This feature depends on the RF switch subsystem rfkill.

config RT2500PCI
	tristate "Ralink rt2500 pci/pcmcia support"
	depends on RT2X00 && PCI
	select RT2X00_LIB_PCI
	select EEPROM_93CX6
	---help---
	  This is an experimental driver for the Ralink rt2500 wireless chip.

	  When compiled as a module, this driver will be called "rt2500pci.ko".

config RT2500PCI_RFKILL
	bool "RT2500 rfkill support"
	depends on RT2500PCI
	select RT2X00_LIB_RFKILL
	---help---
	  This adds support for integrated rt2500 devices that feature a
	  hardware button to control the radio state.
	  This feature depends on the RF switch subsystem rfkill.

config RT61PCI
	tristate "Ralink rt61 pci/pcmcia support"
	depends on RT2X00 && PCI
	select RT2X00_LIB_PCI
	select RT2X00_LIB_FIRMWARE
	select EEPROM_93CX6
	---help---
	  This is an experimental driver for the Ralink rt61 wireless chip.

	  When compiled as a module, this driver will be called "rt61pci.ko".

config RT61PCI_RFKILL
	bool "RT61 rfkill support"
	depends on RT61PCI
	select RT2X00_LIB_RFKILL
	---help---
	  This adds support for integrated rt61 devices that feature a
	  hardware button to control the radio state.
	  This feature depends on the RF switch subsystem rfkill.

config RT2500USB
	tristate "Ralink rt2500 usb support"
	depends on RT2X00 && USB
	select RT2X00_LIB_USB
	---help---
	  This is an experimental driver for the Ralink rt2500 wireless chip.

	  When compiled as a module, this driver will be called "rt2500usb.ko".

config RT73USB
	tristate "Ralink rt73 usb support"
	depends on RT2X00 && USB
	select RT2X00_LIB_USB
	select RT2X00_LIB_FIRMWARE
	---help---
	  This is an experimental driver for the Ralink rt73 wireless chip.

	  When compiled as a module, this driver will be called "rt73usb.ko".

config RT2X00_LIB_DEBUGFS
	bool "Ralink debugfs support"
	depends on RT2X00_LIB && MAC80211_DEBUGFS
	---help---
	  Enable creation of debugfs files for the rt2x00 drivers.
	  These debugfs files support both reading and writing of the
	  most important register types of the rt2x00 devices.

config RT2X00_DEBUG
	bool "Ralink debug output"
	depends on RT2X00_LIB
	---help---
	  Enable debugging output for all rt2x00 modules

