Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
[linux-2.6] / drivers / net / wireless / Kconfig
1 #
2 # Wireless LAN device configuration
3 #
4
5 menu "Wireless LAN (non-hamradio)"
6         depends on NETDEVICES
7
8 config NET_RADIO
9         bool "Wireless LAN drivers (non-hamradio) & Wireless Extensions"
10         select WIRELESS_EXT
11         ---help---
12           Support for wireless LANs and everything having to do with radio,
13           but not with amateur radio or FM broadcasting.
14
15           Saying Y here also enables the Wireless Extensions (creates
16           /proc/net/wireless and enables iwconfig access). The Wireless
17           Extension is a generic API allowing a driver to expose to the user
18           space configuration and statistics specific to common Wireless LANs.
19           The beauty of it is that a single set of tool can support all the
20           variations of Wireless LANs, regardless of their type (as long as
21           the driver supports Wireless Extension). Another advantage is that
22           these parameters may be changed on the fly without restarting the
23           driver (or Linux). If you wish to use Wireless Extensions with
24           wireless PCMCIA (PC-) cards, you need to say Y here; you can fetch
25           the tools from
26           <http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Tools.html>.
27
28 config NET_WIRELESS_RTNETLINK
29         bool "Wireless Extension API over RtNetlink"
30         depends on NET_RADIO
31         ---help---
32           Support the Wireless Extension API over the RtNetlink socket
33           in addition to the traditional ioctl interface (selected above).
34
35           For now, few tools use this facility, but it might grow in the
36           future. The only downside is that it adds 4.5 kB to your kernel.
37
38 # Note : the cards are obsolete (can't buy them anymore), but the drivers
39 # are not, as people are still using them...
40 comment "Obsolete Wireless cards support (pre-802.11)"
41         depends on NET_RADIO && (INET || ISA || PCMCIA)
42
43 config STRIP
44         tristate "STRIP (Metricom starmode radio IP)"
45         depends on NET_RADIO && INET
46         ---help---
47           Say Y if you have a Metricom radio and intend to use Starmode Radio
48           IP. STRIP is a radio protocol developed for the MosquitoNet project
49           (on the WWW at <http://mosquitonet.stanford.edu/>) to send Internet
50           traffic using Metricom radios.  Metricom radios are small, battery
51           powered, 100kbit/sec packet radio transceivers, about the size and
52           weight of a cellular telephone. (You may also have heard them called
53           "Metricom modems" but we avoid the term "modem" because it misleads
54           many people into thinking that you can plug a Metricom modem into a
55           phone line and use it as a modem.)
56
57           You can use STRIP on any Linux machine with a serial port, although
58           it is obviously most useful for people with laptop computers. If you
59           think you might get a Metricom radio in the future, there is no harm
60           in saying Y to STRIP now, except that it makes the kernel a bit
61           bigger.
62
63           To compile this as a module, choose M here: the module will be
64           called strip.
65
66 config ARLAN
67         tristate "Aironet Arlan 655 & IC2200 DS support"
68         depends on NET_RADIO && ISA && !64BIT
69         ---help---
70           Aironet makes Arlan, a class of wireless LAN adapters. These use the
71           www.Telxon.com chip, which is also used on several similar cards.
72           This driver is tested on the 655 and IC2200 series cards. Look at
73           <http://www.ylenurme.ee/~elmer/655/> for the latest information.
74
75           The driver is built as two modules, arlan and arlan-proc. The latter
76           is the /proc interface and is not needed most of time.
77
78           On some computers the card ends up in non-valid state after some
79           time. Use a ping-reset script to clear it.
80
81 config WAVELAN
82         tristate "AT&T/Lucent old WaveLAN & DEC RoamAbout DS ISA support"
83         depends on NET_RADIO && ISA
84         ---help---
85           The Lucent WaveLAN (formerly NCR and AT&T; or DEC RoamAbout DS) is
86           a Radio LAN (wireless Ethernet-like Local Area Network) using the
87           radio frequencies 900 MHz and 2.4 GHz.
88
89           This driver support the ISA version of the WaveLAN card.  A separate
90           driver for the PCMCIA (PC-card) hardware is available in David
91           Hinds' pcmcia-cs package (see the file <file:Documentation/Changes>
92           for location).
93
94           If you want to use an ISA WaveLAN card under Linux, say Y and read
95           the Ethernet-HOWTO, available from
96           <http://www.tldp.org/docs.html#howto>. Some more specific
97           information is contained in
98           <file:Documentation/networking/wavelan.txt> and in the source code
99           <file:drivers/net/wavelan.p.h>.
100
101           You will also need the wireless tools package available from
102           <http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Tools.html>.
103           Please read the man pages contained therein.
104
105           To compile this driver as a module, choose M here: the module will be
106           called wavelan.
107
108 config PCMCIA_WAVELAN
109         tristate "AT&T/Lucent old WaveLAN Pcmcia wireless support"
110         depends on NET_RADIO && PCMCIA
111         help
112           Say Y here if you intend to attach an AT&T/Lucent Wavelan PCMCIA
113           (PC-card) wireless Ethernet networking card to your computer.  This
114           driver is for the non-IEEE-802.11 Wavelan cards.
115
116           To compile this driver as a module, choose M here: the module will be
117           called wavelan_cs.  If unsure, say N.
118
119 config PCMCIA_NETWAVE
120         tristate "Xircom Netwave AirSurfer Pcmcia wireless support"
121         depends on NET_RADIO && PCMCIA
122         help
123           Say Y here if you intend to attach this type of PCMCIA (PC-card)
124           wireless Ethernet networking card to your computer.
125
126           To compile this driver as a module, choose M here: the module will be
127           called netwave_cs.  If unsure, say N.
128
129 comment "Wireless 802.11 Frequency Hopping cards support"
130         depends on NET_RADIO && PCMCIA
131
132 config PCMCIA_RAYCS
133         tristate "Aviator/Raytheon 2.4MHz wireless support"
134         depends on NET_RADIO && PCMCIA
135         ---help---
136           Say Y here if you intend to attach an Aviator/Raytheon PCMCIA
137           (PC-card) wireless Ethernet networking card to your computer.
138           Please read the file <file:Documentation/networking/ray_cs.txt> for
139           details.
140
141           To compile this driver as a module, choose M here: the module will be
142           called ray_cs.  If unsure, say N.
143
144 comment "Wireless 802.11b ISA/PCI cards support"
145         depends on NET_RADIO && (ISA || PCI || PPC_PMAC || PCMCIA)
146
147 config IPW2100
148         tristate "Intel PRO/Wireless 2100 Network Connection"
149         depends on NET_RADIO && PCI
150         select FW_LOADER
151         select IEEE80211
152         ---help---
153           A driver for the Intel PRO/Wireless 2100 Network 
154           Connection 802.11b wireless network adapter.
155
156           See <file:Documentation/networking/README.ipw2100> for information on
157           the capabilities currently enabled in this driver and for tips
158           for debugging issues and problems.
159
160           In order to use this driver, you will need a firmware image for it.
161           You can obtain the firmware from
162           <http://ipw2100.sf.net/>.  Once you have the firmware image, you 
163           will need to place it in /lib/firmware.
164
165           You will also very likely need the Wireless Tools in order to
166           configure your card:
167
168           <http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Tools.html>.
169  
170           If you want to compile the driver as a module ( = code which can be
171           inserted in and removed from the running kernel whenever you want),
172           say M here and read <file:Documentation/modules.txt>.  The module
173           will be called ipw2100.ko.
174         
175 config IPW2100_MONITOR
176         bool "Enable promiscuous mode"
177         depends on IPW2100
178         ---help---
179           Enables promiscuous/monitor mode support for the ipw2100 driver.
180           With this feature compiled into the driver, you can switch to 
181           promiscuous mode via the Wireless Tool's Monitor mode.  While in this
182           mode, no packets can be sent.
183
184 config IPW2100_DEBUG
185         bool "Enable full debugging output in IPW2100 module."
186         depends on IPW2100
187         ---help---
188           This option will enable debug tracing output for the IPW2100.  
189
190           This will result in the kernel module being ~60k larger.  You can 
191           control which debug output is sent to the kernel log by setting the 
192           value in 
193
194           /sys/bus/pci/drivers/ipw2100/debug_level
195
196           This entry will only exist if this option is enabled.
197
198           If you are not trying to debug or develop the IPW2100 driver, you 
199           most likely want to say N here.
200
201 config IPW2200
202         tristate "Intel PRO/Wireless 2200BG and 2915ABG Network Connection"
203         depends on NET_RADIO && PCI
204         select FW_LOADER
205         select IEEE80211
206         ---help---
207           A driver for the Intel PRO/Wireless 2200BG and 2915ABG Network
208           Connection adapters. 
209
210           See <file:Documentation/networking/README.ipw2200> for 
211           information on the capabilities currently enabled in this 
212           driver and for tips for debugging issues and problems.
213
214           In order to use this driver, you will need a firmware image for it.
215           You can obtain the firmware from
216           <http://ipw2200.sf.net/>.  See the above referenced README.ipw2200 
217           for information on where to install the firmware images.
218
219           You will also very likely need the Wireless Tools in order to
220           configure your card:
221
222           <http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Tools.html>.
223  
224           If you want to compile the driver as a module ( = code which can be
225           inserted in and removed from the running kernel whenever you want),
226           say M here and read <file:Documentation/modules.txt>.  The module
227           will be called ipw2200.ko.
228
229 config IPW2200_MONITOR
230         bool "Enable promiscuous mode"
231         depends on IPW2200
232         ---help---
233           Enables promiscuous/monitor mode support for the ipw2200 driver.
234           With this feature compiled into the driver, you can switch to 
235           promiscuous mode via the Wireless Tool's Monitor mode.  While in this
236           mode, no packets can be sent.
237
238 config IPW_QOS
239         bool "Enable QoS support"
240         depends on IPW2200 && EXPERIMENTAL
241
242 config IPW2200_DEBUG
243         bool "Enable full debugging output in IPW2200 module."
244         depends on IPW2200
245         ---help---
246           This option will enable debug tracing output for the IPW2200.  
247
248           This will result in the kernel module being ~100k larger.  You can 
249           control which debug output is sent to the kernel log by setting the 
250           value in 
251
252           /sys/bus/pci/drivers/ipw2200/debug_level
253
254           This entry will only exist if this option is enabled.
255
256           To set a value, simply echo an 8-byte hex value to the same file:
257
258           % echo 0x00000FFO > /sys/bus/pci/drivers/ipw2200/debug_level
259
260           You can find the list of debug mask values in 
261           drivers/net/wireless/ipw2200.h
262
263           If you are not trying to debug or develop the IPW2200 driver, you 
264           most likely want to say N here.
265
266 config AIRO
267         tristate "Cisco/Aironet 34X/35X/4500/4800 ISA and PCI cards"
268         depends on NET_RADIO && ISA_DMA_API && (PCI || BROKEN)
269         select CRYPTO
270         ---help---
271           This is the standard Linux driver to support Cisco/Aironet ISA and
272           PCI 802.11 wireless cards.
273           It supports the new 802.11b cards from Cisco (Cisco 34X, Cisco 35X
274           - with or without encryption) as well as card before the Cisco
275           acquisition (Aironet 4500, Aironet 4800, Aironet 4800B).
276
277           This driver support both the standard Linux Wireless Extensions
278           and Cisco proprietary API, so both the Linux Wireless Tools and the
279           Cisco Linux utilities can be used to configure the card.
280
281           The driver can be compiled as a module and will be named "airo".
282
283 config HERMES
284         tristate "Hermes chipset 802.11b support (Orinoco/Prism2/Symbol)"
285         depends on NET_RADIO && (PPC_PMAC || PCI || PCMCIA)
286         ---help---
287           A driver for 802.11b wireless cards based based on the "Hermes" or
288           Intersil HFA384x (Prism 2) MAC controller.  This includes the vast
289           majority of the PCMCIA 802.11b cards (which are nearly all rebadges)
290           - except for the Cisco/Aironet cards.  Cards supported include the
291           Apple Airport (not a PCMCIA card), WavelanIEEE/Orinoco,
292           Cabletron/EnteraSys Roamabout, ELSA AirLancer, MELCO Buffalo, Avaya,
293           IBM High Rate Wireless, Farralon Syyline, Samsung MagicLAN, Netgear
294           MA401, LinkSys WPC-11, D-Link DWL-650, 3Com AirConnect, Intel
295           PRO/Wireless, and Symbol Spectrum24 High Rate amongst others.
296
297           This option includes the guts of the driver, but in order to
298           actually use a card you will also need to enable support for PCMCIA
299           Hermes cards, PLX9052 based PCI adaptors or the Apple Airport below.
300
301           You will also very likely also need the Wireless Tools in order to
302           configure your card and that /etc/pcmcia/wireless.opts works :
303           <http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Tools.html>
304
305 config APPLE_AIRPORT
306         tristate "Apple Airport support (built-in)"
307         depends on PPC_PMAC && HERMES
308         help
309           Say Y here to support the Airport 802.11b wireless Ethernet hardware
310           built into the Macintosh iBook and other recent PowerPC-based
311           Macintosh machines. This is essentially a Lucent Orinoco card with 
312           a non-standard interface.
313
314           This driver does not support the Airport Extreme (802.11b/g). Use
315           the BCM43xx driver for Airport Extreme cards.
316
317 config PLX_HERMES
318         tristate "Hermes in PLX9052 based PCI adaptor support (Netgear MA301 etc.)"
319         depends on PCI && HERMES
320         help
321           Enable support for PCMCIA cards supported by the "Hermes" (aka
322           orinoco) driver when used in PLX9052 based PCI adaptors.  These
323           adaptors are not a full PCMCIA controller but act as a more limited
324           PCI <-> PCMCIA bridge.  Several vendors sell such adaptors so that
325           802.11b PCMCIA cards can be used in desktop machines.  The Netgear
326           MA301 is such an adaptor.
327
328 config TMD_HERMES
329         tristate "Hermes in TMD7160 based PCI adaptor support"
330         depends on PCI && HERMES
331         help
332           Enable support for PCMCIA cards supported by the "Hermes" (aka
333           orinoco) driver when used in TMD7160 based PCI adaptors.  These
334           adaptors are not a full PCMCIA controller but act as a more limited
335           PCI <-> PCMCIA bridge.  Several vendors sell such adaptors so that
336           802.11b PCMCIA cards can be used in desktop machines.
337
338 config NORTEL_HERMES
339         tristate "Nortel emobility PCI adaptor support"
340         depends on PCI && HERMES
341         help
342           Enable support for PCMCIA cards supported by the "Hermes" (aka
343           orinoco) driver when used in Nortel emobility PCI adaptors.  These
344           adaptors are not full PCMCIA controllers, but act as a more limited
345           PCI <-> PCMCIA bridge.
346
347 config PCI_HERMES
348         tristate "Prism 2.5 PCI 802.11b adaptor support"
349         depends on PCI && HERMES
350         help
351           Enable support for PCI and mini-PCI 802.11b wireless NICs based on
352           the Prism 2.5 chipset.  These are true PCI cards, not the 802.11b
353           PCMCIA cards bundled with PCI<->PCMCIA adaptors which are also
354           common.  Some of the built-in wireless adaptors in laptops are of
355           this variety.
356
357 config ATMEL
358       tristate "Atmel at76c50x chipset  802.11b support"
359       depends on NET_RADIO && (PCI || PCMCIA)
360       select FW_LOADER
361       select CRC32
362        ---help---
363         A driver 802.11b wireless cards based on the Atmel fast-vnet
364         chips. This driver supports standard Linux wireless extensions. 
365  
366         Many  cards based on this chipset do not have flash memory
367         and need their firmware loaded at start-up. If yours is 
368         one of these, you will need to provide a firmware image
369         to be loaded into the card by the driver. The Atmel
370         firmware package can be downloaded from
371         <http://www.thekelleys.org.uk/atmel>
372
373 config PCI_ATMEL
374       tristate "Atmel at76c506 PCI cards"
375       depends on ATMEL && PCI
376        ---help---
377         Enable support for PCI and mini-PCI cards containing the
378         Atmel at76c506 chip.
379
380 # If Pcmcia is compiled in, offer Pcmcia cards...
381 comment "Wireless 802.11b Pcmcia/Cardbus cards support"
382         depends on NET_RADIO && PCMCIA
383
384 config PCMCIA_HERMES
385         tristate "Hermes PCMCIA card support"
386         depends on NET_RADIO && PCMCIA && HERMES
387         ---help---
388           A driver for "Hermes" chipset based PCMCIA wireless adaptors, such
389           as the Lucent WavelanIEEE/Orinoco cards and their OEM (Cabletron/
390           EnteraSys RoamAbout 802.11, ELSA Airlancer, Melco Buffalo and
391           others).  It should also be usable on various Prism II based cards
392           such as the Linksys, D-Link and Farallon Skyline.  It should also
393           work on Symbol cards such as the 3Com AirConnect and Ericsson WLAN.
394
395           To use your PC-cards, you will need supporting software from David
396           Hinds' pcmcia-cs package (see the file <file:Documentation/Changes>
397           for location).  You also want to check out the PCMCIA-HOWTO,
398           available from <http://www.tldp.org/docs.html#howto>.
399
400           You will also very likely also need the Wireless Tools in order to
401           configure your card and that /etc/pcmcia/wireless.opts works:
402           <http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Tools.html>.
403
404 config PCMCIA_SPECTRUM
405         tristate "Symbol Spectrum24 Trilogy PCMCIA card support"
406         depends on NET_RADIO && PCMCIA && HERMES
407         select FW_LOADER
408         ---help---
409
410           This is a driver for 802.11b cards using RAM-loadable Symbol
411           firmware, such as Symbol Wireless Networker LA4100, CompactFlash
412           cards by Socket Communications and Intel PRO/Wireless 2011B.
413
414           This driver requires firmware download on startup.  Utilities
415           for downloading Symbol firmware are available at
416           <http://sourceforge.net/projects/orinoco/>
417
418 config AIRO_CS
419         tristate "Cisco/Aironet 34X/35X/4500/4800 PCMCIA cards"
420         depends on NET_RADIO && PCMCIA && (BROKEN || !M32R)
421         select CRYPTO
422         ---help---
423           This is the standard Linux driver to support Cisco/Aironet PCMCIA
424           802.11 wireless cards.  This driver is the same as the Aironet
425           driver part of the Linux Pcmcia package.
426           It supports the new 802.11b cards from Cisco (Cisco 34X, Cisco 35X
427           - with or without encryption) as well as card before the Cisco
428           acquisition (Aironet 4500, Aironet 4800, Aironet 4800B). It also
429           supports OEM of Cisco such as the DELL TrueMobile 4800 and Xircom
430           802.11b cards.
431
432           This driver support both the standard Linux Wireless Extensions
433           and Cisco proprietary API, so both the Linux Wireless Tools and the
434           Cisco Linux utilities can be used to configure the card.
435
436           To use your PC-cards, you will need supporting software from David
437           Hinds' pcmcia-cs package (see the file <file:Documentation/Changes>
438           for location).  You also want to check out the PCMCIA-HOWTO,
439           available from <http://www.tldp.org/docs.html#howto>.
440
441 config PCMCIA_ATMEL
442         tristate "Atmel at76c502/at76c504 PCMCIA cards"
443         depends on NET_RADIO && ATMEL && PCMCIA
444         select FW_LOADER
445         select CRC32
446         ---help---
447           Enable support for PCMCIA cards containing the
448           Atmel at76c502 and at76c504 chips.
449
450 config PCMCIA_WL3501
451       tristate "Planet WL3501 PCMCIA cards"
452       depends on NET_RADIO && EXPERIMENTAL && PCMCIA
453        ---help---
454          A driver for WL3501 PCMCIA 802.11 wireless cards made by Planet.
455          It has basic support for Linux wireless extensions and initial
456          micro support for ethtool.
457
458 comment "Prism GT/Duette 802.11(a/b/g) PCI/Cardbus support"
459         depends on NET_RADIO && PCI
460 config PRISM54
461         tristate 'Intersil Prism GT/Duette/Indigo PCI/Cardbus' 
462         depends on PCI && NET_RADIO && EXPERIMENTAL
463         select FW_LOADER
464         ---help---
465           Enable PCI and Cardbus support for the following chipset based cards:
466
467           ISL3880 - Prism GT            802.11 b/g
468           ISL3877 - Prism Indigo        802.11 a
469           ISL3890 - Prism Duette        802.11 a/b/g
470           
471           For a complete list of supported cards visit <http://prism54.org>.
472           Here is the latest confirmed list of supported cards:
473
474           3com OfficeConnect 11g Cardbus Card aka 3CRWE154G72 (version 1)
475           Allnet ALL0271 PCI Card
476           Compex WL54G Cardbus Card
477           Corega CG-WLCB54GT Cardbus Card
478           D-Link Air Plus Xtreme G A1 Cardbus Card aka DWL-g650
479           I-O Data WN-G54/CB Cardbus Card
480           Kobishi XG-300 aka Z-Com Cardbus Card
481           Netgear WG511 Cardbus Card
482           Ovislink WL-5400PCI PCI Card
483           Peabird WLG-PCI PCI Card
484           Sitecom WL-100i Cardbus Card
485           Sitecom WL-110i PCI Card
486           SMC2802W -    EZ Connect g 2.4GHz 54 Mbps Wireless PCI Card
487           SMC2835W -    EZ Connect g 2.4GHz 54 Mbps Wireless Cardbus Card
488           SMC2835W-V2 - EZ Connect g 2.4GHz 54 Mbps Wireless Cardbus Card
489           Z-Com XG-900 PCI Card
490           Zyxel G-100 Cardbus Card
491
492           If you enable this you will need a firmware file as well.
493           You will need to copy this to /usr/lib/hotplug/firmware/isl3890.
494           You can get this non-GPL'd firmware file from the Prism54 project page:
495           <http://prism54.org>
496           You will also need the /etc/hotplug/firmware.agent script from
497           a current hotplug package.
498
499           Note: You need a motherboard with DMA support to use any of these cards 
500           
501           If you want to compile the driver as a module ( = code which can be
502           inserted in and removed from the running kernel whenever you want),
503           say M here and read <file:Documentation/modules.txt>.  The module
504           will be called prism54.ko.
505
506 source "drivers/net/wireless/hostap/Kconfig"
507 source "drivers/net/wireless/bcm43xx/Kconfig"
508
509 # yes, this works even when no drivers are selected
510 config NET_WIRELESS
511         bool
512         depends on NET_RADIO && (ISA || PCI || PPC_PMAC || PCMCIA)
513         default y
514
515 endmenu
516