1# SPDX-License-Identifier: GPL-2.0-only
2#
3# Intel Centrino wireless drivers
4#
5
6config IPW2100
7	tristate "Intel PRO/Wireless 2100 Network Connection"
8	depends on PCI && CFG80211
9	select WIRELESS_EXT
10	select WEXT_SPY
11	select WEXT_PRIV
12	select FW_LOADER
13	select LIB80211
14	select LIBIPW
15	help
16	  A driver for the Intel PRO/Wireless 2100 Network
17	  Connection 802.11b wireless network adapter.
18
19	  See <file:Documentation/networking/device_drivers/wifi/intel/ipw2100.rst>
20	  for information on the capabilities currently enabled in this driver
21	  and for tips for debugging issues and problems.
22
23	  In order to use this driver, you will need a firmware image for it.
24	  You can obtain the firmware from
25	  <http://ipw2100.sf.net/>.  Once you have the firmware image, you
26	  will need to place it in /lib/firmware.
27
28	  You will also very likely need the Wireless Tools in order to
29	  configure your card:
30
31	  <https://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Tools.html>.
32
33	  It is recommended that you compile this driver as a module (M)
34	  rather than built-in (Y). This driver requires firmware at device
35	  initialization time, and when built-in this typically happens
36	  before the filesystem is accessible (hence firmware will be
37	  unavailable and initialization will fail). If you do choose to build
38	  this driver into your kernel image, you can avoid this problem by
39	  including the firmware and a firmware loader in an initramfs.
40
41config IPW2100_MONITOR
42	bool "Enable promiscuous mode"
43	depends on IPW2100
44	help
45	  Enables promiscuous/monitor mode support for the ipw2100 driver.
46	  With this feature compiled into the driver, you can switch to
47	  promiscuous mode via the Wireless Tool's Monitor mode.  While in this
48	  mode, no packets can be sent.
49
50config IPW2100_DEBUG
51	bool "Enable full debugging output in IPW2100 module."
52	depends on IPW2100
53	help
54	  This option will enable debug tracing output for the IPW2100.
55
56	  This will result in the kernel module being ~60k larger.  You can
57	  control which debug output is sent to the kernel log by setting the
58	  value in
59
60	  /sys/bus/pci/drivers/ipw2100/debug_level
61
62	  This entry will only exist if this option is enabled.
63
64	  If you are not trying to debug or develop the IPW2100 driver, you
65	  most likely want to say N here.
66
67config IPW2200
68	tristate "Intel PRO/Wireless 2200BG and 2915ABG Network Connection"
69	depends on PCI && CFG80211
70	select CFG80211_WEXT_EXPORT
71	select WIRELESS_EXT
72	select WEXT_SPY
73	select WEXT_PRIV
74	select FW_LOADER
75	select LIB80211
76	select LIBIPW
77	help
78	  A driver for the Intel PRO/Wireless 2200BG and 2915ABG Network
79	  Connection adapters.
80
81	  See <file:Documentation/networking/device_drivers/wifi/intel/ipw2200.rst>
82	  for information on the capabilities currently enabled in this
83	  driver and for tips for debugging issues and problems.
84
85	  In order to use this driver, you will need a firmware image for it.
86	  You can obtain the firmware from
87	  <http://ipw2200.sf.net/>.  See the above referenced README.ipw2200
88	  for information on where to install the firmware images.
89
90	  You will also very likely need the Wireless Tools in order to
91	  configure your card:
92
93	  <https://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Tools.html>.
94
95	  It is recommended that you compile this driver as a module (M)
96	  rather than built-in (Y). This driver requires firmware at device
97	  initialization time, and when built-in this typically happens
98	  before the filesystem is accessible (hence firmware will be
99	  unavailable and initialization will fail). If you do choose to build
100	  this driver into your kernel image, you can avoid this problem by
101	  including the firmware and a firmware loader in an initramfs.
102
103config IPW2200_MONITOR
104	bool "Enable promiscuous mode"
105	depends on IPW2200
106	help
107	  Enables promiscuous/monitor mode support for the ipw2200 driver.
108	  With this feature compiled into the driver, you can switch to
109	  promiscuous mode via the Wireless Tool's Monitor mode.  While in this
110	  mode, no packets can be sent.
111
112config IPW2200_RADIOTAP
113	bool "Enable radiotap format 802.11 raw packet support"
114	depends on IPW2200_MONITOR
115
116config IPW2200_PROMISCUOUS
117	bool "Enable creation of a RF radiotap promiscuous interface"
118	depends on IPW2200_MONITOR
119	select IPW2200_RADIOTAP
120	help
121	  Enables the creation of a second interface prefixed 'rtap'.
122	  This second interface will provide every received in radiotap
123	  format.
124
125	  This is useful for performing wireless network analysis while
126	  maintaining an active association.
127
128	  Example usage:
129
130	    % modprobe ipw2200 rtap_iface=1
131	    % ifconfig rtap0 up
132	    % tethereal -i rtap0
133
134	  If you do not specify 'rtap_iface=1' as a module parameter then
135	  the rtap interface will not be created and you will need to turn
136	  it on via sysfs:
137
138	    % echo 1 > /sys/bus/pci/drivers/ipw2200/*/rtap_iface
139
140config IPW2200_QOS
141	bool "Enable QoS support"
142	depends on IPW2200
143
144config IPW2200_DEBUG
145	bool "Enable full debugging output in IPW2200 module."
146	depends on IPW2200
147	help
148	  This option will enable low level debug tracing output for IPW2200.
149
150	  Note, normal debug code is already compiled in. This low level
151	  debug option enables debug on hot paths (e.g Tx, Rx, ISR) and
152	  will result in the kernel module being ~70 larger.  Most users
153	  will typically not need this high verbosity debug information.
154
155	  If you are not sure, say N here.
156
157config LIBIPW
158	tristate
159	depends on PCI && CFG80211
160	select WIRELESS_EXT
161	select WEXT_SPY
162	select CRYPTO
163	select CRYPTO_ARC4
164	select CRYPTO_ECB
165	select CRYPTO_AES
166	select CRYPTO_MICHAEL_MIC
167	select CRYPTO_ECB
168	select CRC32
169	select LIB80211
170	select LIB80211_CRYPT_WEP
171	select LIB80211_CRYPT_TKIP
172	select LIB80211_CRYPT_CCMP
173	help
174	This option enables the hardware independent IEEE 802.11
175	networking stack.  This component is deprecated in favor of the
176	mac80211 component.
177
178config LIBIPW_DEBUG
179	bool "Full debugging output for the LIBIPW component"
180	depends on LIBIPW
181	help
182	  This option will enable debug tracing output for the
183	  libipw component.
184
185	  This will result in the kernel module being ~70k larger.  You
186	  can control which debug output is sent to the kernel log by
187	  setting the value in
188
189	  /proc/net/ieee80211/debug_level
190
191	  For example:
192
193	  % echo 0x00000FFO > /proc/net/ieee80211/debug_level
194
195	  For a list of values you can assign to debug_level, you
196	  can look at the bit mask values in ieee80211.h
197
198	  If you are not trying to debug or develop the libipw
199	  component, you most likely want to say N here.
200