config HOSTAP
	depends on !KERNEL_3_10
	tristate "IEEE 802.11 for Host AP (Prism2/2.5/3 and WEP/TKIP/CCMP)"
	depends on m
	depends on WIRELESS_EXT
	depends on WEXT_SPY
	depends on WEXT_PRIV
	depends on CRYPTO
	depends on CRYPTO_ARC4
	depends on CRYPTO_ECB
	depends on CRYPTO_AES
	depends on CRYPTO_MICHAEL_MIC
	depends on CRYPTO_ECB
	depends on CRC32
	select LIB80211
	select LIB80211_CRYPT_WEP
	select LIB80211_CRYPT_TKIP
	select LIB80211_CRYPT_CCMP
	---help---
	Shared driver code for IEEE 802.11b wireless cards based on
	Intersil Prism2/2.5/3 chipset. This driver supports so called
	Host AP mode that allows the card to act as an IEEE 802.11
	access point.

	See <http://hostap.epitest.fi/> for more information about the
	Host AP driver configuration and tools. This site includes
	information and tools (hostapd and wpa_supplicant) for WPA/WPA2
	support.

	This option includes the base Host AP driver code that is shared by
	different hardware models. You will also need to enable support for
	PLX/PCI/CS version of the driver to actually use the driver.

	The driver can be compiled as a module and it will be called
	hostap.

config HOSTAP_FIRMWARE
	bool "Support downloading firmware images with Host AP driver"
	depends on HOSTAP
	---help---
	Configure Host AP driver to include support for firmware image
	download. This option by itself only enables downloading to the
	volatile memory, i.e. the card RAM. This option is required to
	support cards that don't have firmware in flash, such as D-Link
	DWL-520 rev E and D-Link DWL-650 rev P.

	Firmware image downloading needs a user space tool, prism2_srec.
	It is available from http://hostap.epitest.fi/.

config HOSTAP_FIRMWARE_NVRAM
	bool "Support for non-volatile firmware download"
	depends on HOSTAP_FIRMWARE
	---help---
	Allow Host AP driver to write firmware images to the non-volatile
	card memory, i.e. flash memory that survives power cycling.
	Enable this option if you want to be able to change card firmware
	permanently.

	Firmware image downloading needs a user space tool, prism2_srec.
	It is available from http://hostap.epitest.fi/.

config HOSTAP_PLX
	tristate "Host AP driver for Prism2/2.5/3 in PLX9052 PCI adaptors"
	depends on m
	depends on PCI && HOSTAP
	---help---
	Host AP driver's version for Prism2/2.5/3 PC Cards in PLX9052 based
	PCI adaptors.

	"Host AP support for Prism2/2.5/3 IEEE 802.11b" is required for this
	driver and its help text includes more information about the Host AP
	driver.

	The driver can be compiled as a module and will be named
	hostap_plx.

config HOSTAP_PCI
	tristate "Host AP driver for Prism2.5 PCI adaptors"
	depends on m
	depends on PCI && HOSTAP
	---help---
	Host AP driver's version for Prism2.5 PCI adaptors.

	"Host AP support for Prism2/2.5/3 IEEE 802.11b" is required for this
	driver and its help text includes more information about the Host AP
	driver.

	The driver can be compiled as a module and will be named
	hostap_pci.

config HOSTAP_CS
	tristate "Host AP driver for Prism2/2.5/3 PC Cards"
	depends on m
	depends on PCMCIA && HOSTAP
	---help---
	Host AP driver's version for Prism2/2.5/3 PC Cards.

	"Host AP support for Prism2/2.5/3 IEEE 802.11b" is required for this
	driver and its help text includes more information about the Host AP
	driver.

	The driver can be compiled as a module and will be named
	hostap_cs.
