config P54_COMMON
	tristate "Softmac Prism54 support"
	depends on MAC80211
	select FW_LOADER
	select CRC_CCITT
	---help---
	  This is common code for isl38xx/stlc45xx based modules.
	  This module does nothing by itself - the USB/PCI/SPI front-ends
	  also need to be enabled in order to support any devices.

	  These devices require softmac firmware which can be found at
	  <http://wireless.kernel.org/en/users/Drivers/p54>

	  If you choose to build a module, it'll be called p54common.

config P54_USB
	tristate "Prism54 USB support"
	depends on P54_COMMON && USB
	select CRC32
	---help---
	  This driver is for USB isl38xx based wireless cards.

	  These devices require softmac firmware which can be found at
	  <http://wireless.kernel.org/en/users/Drivers/p54>

	  If you choose to build a module, it'll be called p54usb.

config P54_PCI
	tristate "Prism54 PCI support"
	depends on P54_COMMON && PCI
	---help---
	  This driver is for PCI isl38xx based wireless cards.
	  This driver supports most devices that are supported by the
	  fullmac prism54 driver plus many devices which are not
	  supported by the fullmac driver/firmware.

	  This driver requires softmac firmware which can be found at
	  <http://wireless.kernel.org/en/users/Drivers/p54>

	  If you choose to build a module, it'll be called p54pci.

config P54_SPI
	tristate "Prism54 SPI (stlc45xx) support"
	depends on P54_COMMON && SPI_MASTER && GENERIC_HARDIRQS
	---help---
	  This driver is for stlc4550 or stlc4560 based wireless chips
	  such as Nokia's N800/N810 Portable Internet Tablet.

	  If you choose to build a module, it'll be called p54spi.

config P54_SPI_DEFAULT_EEPROM
	bool "Include fallback EEPROM blob"
	depends on P54_SPI
	default n
	---help---
	 Unlike the PCI or USB devices, the SPI variants don't have
	 a dedicated EEPROM chip to store all device specific values
	 for calibration, country and interface settings.

	 The driver will try to load the image "3826.eeprom", if the
	 file is put at the right place. (usually /lib/firmware.)

	 Only if this request fails, this option will provide a
	 backup set of generic values to get the device working.

	 Enabling this option adds about 4k to p54spi.

config P54_LEDS
	bool
	depends on P54_COMMON && MAC80211_LEDS && (LEDS_CLASS = y || LEDS_CLASS = P54_COMMON)
	default y
