162306a36Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only 262306a36Sopenharmony_ci# 362306a36Sopenharmony_ci# Intel Centrino wireless drivers 462306a36Sopenharmony_ci# 562306a36Sopenharmony_ci 662306a36Sopenharmony_ciconfig IPW2100 762306a36Sopenharmony_ci tristate "Intel PRO/Wireless 2100 Network Connection" 862306a36Sopenharmony_ci depends on PCI && CFG80211 962306a36Sopenharmony_ci select WIRELESS_EXT 1062306a36Sopenharmony_ci select WEXT_SPY 1162306a36Sopenharmony_ci select WEXT_PRIV 1262306a36Sopenharmony_ci select FW_LOADER 1362306a36Sopenharmony_ci select LIB80211 1462306a36Sopenharmony_ci select LIBIPW 1562306a36Sopenharmony_ci help 1662306a36Sopenharmony_ci A driver for the Intel PRO/Wireless 2100 Network 1762306a36Sopenharmony_ci Connection 802.11b wireless network adapter. 1862306a36Sopenharmony_ci 1962306a36Sopenharmony_ci See <file:Documentation/networking/device_drivers/wifi/intel/ipw2100.rst> 2062306a36Sopenharmony_ci for information on the capabilities currently enabled in this driver 2162306a36Sopenharmony_ci and for tips for debugging issues and problems. 2262306a36Sopenharmony_ci 2362306a36Sopenharmony_ci In order to use this driver, you will need a firmware image for it. 2462306a36Sopenharmony_ci You can obtain the firmware from 2562306a36Sopenharmony_ci <http://ipw2100.sf.net/>. Once you have the firmware image, you 2662306a36Sopenharmony_ci will need to place it in /lib/firmware. 2762306a36Sopenharmony_ci 2862306a36Sopenharmony_ci You will also very likely need the Wireless Tools in order to 2962306a36Sopenharmony_ci configure your card: 3062306a36Sopenharmony_ci 3162306a36Sopenharmony_ci <https://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Tools.html>. 3262306a36Sopenharmony_ci 3362306a36Sopenharmony_ci It is recommended that you compile this driver as a module (M) 3462306a36Sopenharmony_ci rather than built-in (Y). This driver requires firmware at device 3562306a36Sopenharmony_ci initialization time, and when built-in this typically happens 3662306a36Sopenharmony_ci before the filesystem is accessible (hence firmware will be 3762306a36Sopenharmony_ci unavailable and initialization will fail). If you do choose to build 3862306a36Sopenharmony_ci this driver into your kernel image, you can avoid this problem by 3962306a36Sopenharmony_ci including the firmware and a firmware loader in an initramfs. 4062306a36Sopenharmony_ci 4162306a36Sopenharmony_ciconfig IPW2100_MONITOR 4262306a36Sopenharmony_ci bool "Enable promiscuous mode" 4362306a36Sopenharmony_ci depends on IPW2100 4462306a36Sopenharmony_ci help 4562306a36Sopenharmony_ci Enables promiscuous/monitor mode support for the ipw2100 driver. 4662306a36Sopenharmony_ci With this feature compiled into the driver, you can switch to 4762306a36Sopenharmony_ci promiscuous mode via the Wireless Tool's Monitor mode. While in this 4862306a36Sopenharmony_ci mode, no packets can be sent. 4962306a36Sopenharmony_ci 5062306a36Sopenharmony_ciconfig IPW2100_DEBUG 5162306a36Sopenharmony_ci bool "Enable full debugging output in IPW2100 module." 5262306a36Sopenharmony_ci depends on IPW2100 5362306a36Sopenharmony_ci help 5462306a36Sopenharmony_ci This option will enable debug tracing output for the IPW2100. 5562306a36Sopenharmony_ci 5662306a36Sopenharmony_ci This will result in the kernel module being ~60k larger. You can 5762306a36Sopenharmony_ci control which debug output is sent to the kernel log by setting the 5862306a36Sopenharmony_ci value in 5962306a36Sopenharmony_ci 6062306a36Sopenharmony_ci /sys/bus/pci/drivers/ipw2100/debug_level 6162306a36Sopenharmony_ci 6262306a36Sopenharmony_ci This entry will only exist if this option is enabled. 6362306a36Sopenharmony_ci 6462306a36Sopenharmony_ci If you are not trying to debug or develop the IPW2100 driver, you 6562306a36Sopenharmony_ci most likely want to say N here. 6662306a36Sopenharmony_ci 6762306a36Sopenharmony_ciconfig IPW2200 6862306a36Sopenharmony_ci tristate "Intel PRO/Wireless 2200BG and 2915ABG Network Connection" 6962306a36Sopenharmony_ci depends on PCI && CFG80211 7062306a36Sopenharmony_ci select CFG80211_WEXT_EXPORT 7162306a36Sopenharmony_ci select WIRELESS_EXT 7262306a36Sopenharmony_ci select WEXT_SPY 7362306a36Sopenharmony_ci select WEXT_PRIV 7462306a36Sopenharmony_ci select FW_LOADER 7562306a36Sopenharmony_ci select LIB80211 7662306a36Sopenharmony_ci select LIBIPW 7762306a36Sopenharmony_ci help 7862306a36Sopenharmony_ci A driver for the Intel PRO/Wireless 2200BG and 2915ABG Network 7962306a36Sopenharmony_ci Connection adapters. 8062306a36Sopenharmony_ci 8162306a36Sopenharmony_ci See <file:Documentation/networking/device_drivers/wifi/intel/ipw2200.rst> 8262306a36Sopenharmony_ci for information on the capabilities currently enabled in this 8362306a36Sopenharmony_ci driver and for tips for debugging issues and problems. 8462306a36Sopenharmony_ci 8562306a36Sopenharmony_ci In order to use this driver, you will need a firmware image for it. 8662306a36Sopenharmony_ci You can obtain the firmware from 8762306a36Sopenharmony_ci <http://ipw2200.sf.net/>. See the above referenced README.ipw2200 8862306a36Sopenharmony_ci for information on where to install the firmware images. 8962306a36Sopenharmony_ci 9062306a36Sopenharmony_ci You will also very likely need the Wireless Tools in order to 9162306a36Sopenharmony_ci configure your card: 9262306a36Sopenharmony_ci 9362306a36Sopenharmony_ci <https://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Tools.html>. 9462306a36Sopenharmony_ci 9562306a36Sopenharmony_ci It is recommended that you compile this driver as a module (M) 9662306a36Sopenharmony_ci rather than built-in (Y). This driver requires firmware at device 9762306a36Sopenharmony_ci initialization time, and when built-in this typically happens 9862306a36Sopenharmony_ci before the filesystem is accessible (hence firmware will be 9962306a36Sopenharmony_ci unavailable and initialization will fail). If you do choose to build 10062306a36Sopenharmony_ci this driver into your kernel image, you can avoid this problem by 10162306a36Sopenharmony_ci including the firmware and a firmware loader in an initramfs. 10262306a36Sopenharmony_ci 10362306a36Sopenharmony_ciconfig IPW2200_MONITOR 10462306a36Sopenharmony_ci bool "Enable promiscuous mode" 10562306a36Sopenharmony_ci depends on IPW2200 10662306a36Sopenharmony_ci help 10762306a36Sopenharmony_ci Enables promiscuous/monitor mode support for the ipw2200 driver. 10862306a36Sopenharmony_ci With this feature compiled into the driver, you can switch to 10962306a36Sopenharmony_ci promiscuous mode via the Wireless Tool's Monitor mode. While in this 11062306a36Sopenharmony_ci mode, no packets can be sent. 11162306a36Sopenharmony_ci 11262306a36Sopenharmony_ciconfig IPW2200_RADIOTAP 11362306a36Sopenharmony_ci bool "Enable radiotap format 802.11 raw packet support" 11462306a36Sopenharmony_ci depends on IPW2200_MONITOR 11562306a36Sopenharmony_ci 11662306a36Sopenharmony_ciconfig IPW2200_PROMISCUOUS 11762306a36Sopenharmony_ci bool "Enable creation of a RF radiotap promiscuous interface" 11862306a36Sopenharmony_ci depends on IPW2200_MONITOR 11962306a36Sopenharmony_ci select IPW2200_RADIOTAP 12062306a36Sopenharmony_ci help 12162306a36Sopenharmony_ci Enables the creation of a second interface prefixed 'rtap'. 12262306a36Sopenharmony_ci This second interface will provide every received in radiotap 12362306a36Sopenharmony_ci format. 12462306a36Sopenharmony_ci 12562306a36Sopenharmony_ci This is useful for performing wireless network analysis while 12662306a36Sopenharmony_ci maintaining an active association. 12762306a36Sopenharmony_ci 12862306a36Sopenharmony_ci Example usage: 12962306a36Sopenharmony_ci 13062306a36Sopenharmony_ci % modprobe ipw2200 rtap_iface=1 13162306a36Sopenharmony_ci % ifconfig rtap0 up 13262306a36Sopenharmony_ci % tethereal -i rtap0 13362306a36Sopenharmony_ci 13462306a36Sopenharmony_ci If you do not specify 'rtap_iface=1' as a module parameter then 13562306a36Sopenharmony_ci the rtap interface will not be created and you will need to turn 13662306a36Sopenharmony_ci it on via sysfs: 13762306a36Sopenharmony_ci 13862306a36Sopenharmony_ci % echo 1 > /sys/bus/pci/drivers/ipw2200/*/rtap_iface 13962306a36Sopenharmony_ci 14062306a36Sopenharmony_ciconfig IPW2200_QOS 14162306a36Sopenharmony_ci bool "Enable QoS support" 14262306a36Sopenharmony_ci depends on IPW2200 14362306a36Sopenharmony_ci 14462306a36Sopenharmony_ciconfig IPW2200_DEBUG 14562306a36Sopenharmony_ci bool "Enable full debugging output in IPW2200 module." 14662306a36Sopenharmony_ci depends on IPW2200 14762306a36Sopenharmony_ci help 14862306a36Sopenharmony_ci This option will enable low level debug tracing output for IPW2200. 14962306a36Sopenharmony_ci 15062306a36Sopenharmony_ci Note, normal debug code is already compiled in. This low level 15162306a36Sopenharmony_ci debug option enables debug on hot paths (e.g Tx, Rx, ISR) and 15262306a36Sopenharmony_ci will result in the kernel module being ~70 larger. Most users 15362306a36Sopenharmony_ci will typically not need this high verbosity debug information. 15462306a36Sopenharmony_ci 15562306a36Sopenharmony_ci If you are not sure, say N here. 15662306a36Sopenharmony_ci 15762306a36Sopenharmony_ciconfig LIBIPW 15862306a36Sopenharmony_ci tristate 15962306a36Sopenharmony_ci depends on PCI && CFG80211 16062306a36Sopenharmony_ci select WIRELESS_EXT 16162306a36Sopenharmony_ci select WEXT_SPY 16262306a36Sopenharmony_ci select CRYPTO 16362306a36Sopenharmony_ci select CRYPTO_MICHAEL_MIC 16462306a36Sopenharmony_ci select CRC32 16562306a36Sopenharmony_ci select LIB80211 16662306a36Sopenharmony_ci select LIB80211_CRYPT_WEP 16762306a36Sopenharmony_ci select LIB80211_CRYPT_TKIP 16862306a36Sopenharmony_ci select LIB80211_CRYPT_CCMP 16962306a36Sopenharmony_ci help 17062306a36Sopenharmony_ci This option enables the hardware independent IEEE 802.11 17162306a36Sopenharmony_ci networking stack. This component is deprecated in favor of the 17262306a36Sopenharmony_ci mac80211 component. 17362306a36Sopenharmony_ci 17462306a36Sopenharmony_ciconfig LIBIPW_DEBUG 17562306a36Sopenharmony_ci bool "Full debugging output for the LIBIPW component" 17662306a36Sopenharmony_ci depends on LIBIPW 17762306a36Sopenharmony_ci help 17862306a36Sopenharmony_ci This option will enable debug tracing output for the 17962306a36Sopenharmony_ci libipw component. 18062306a36Sopenharmony_ci 18162306a36Sopenharmony_ci This will result in the kernel module being ~70k larger. You 18262306a36Sopenharmony_ci can control which debug output is sent to the kernel log by 18362306a36Sopenharmony_ci setting the value in 18462306a36Sopenharmony_ci 18562306a36Sopenharmony_ci /proc/net/ieee80211/debug_level 18662306a36Sopenharmony_ci 18762306a36Sopenharmony_ci For example: 18862306a36Sopenharmony_ci 18962306a36Sopenharmony_ci % echo 0x00000FFO > /proc/net/ieee80211/debug_level 19062306a36Sopenharmony_ci 19162306a36Sopenharmony_ci For a list of values you can assign to debug_level, you 19262306a36Sopenharmony_ci can look at the bit mask values in ieee80211.h 19362306a36Sopenharmony_ci 19462306a36Sopenharmony_ci If you are not trying to debug or develop the libipw 19562306a36Sopenharmony_ci component, you most likely want to say N here. 196