The devices, the drivers - 802.11b


Jean Tourrilhes

25 July 07



The who's who of Wireless LANs under Linux.

This section list devices based on the IEEE 802.11b standard (see section 8), operating in the 2.4 GHz band up to 11 Mb/s.

3.1 Lucent Wavelan IEEE, Lucent Orinoco, Enterasys RoamAbout 802, Elsa AirLancer 11 and Melco/Buffalo 802.11b

Driver status : obsolete (see section 3.2)
Driver name : wvlan_cs.o
Version : v1.0.7
Where : Pcmcia package (3.1.25)
Maintainers : Anton Blanchard <anton@samba.org>
Andreas Neuhaus <andy@fasta.fh-dortmund.de>
Harald Roelle <harald@roelle.com>
Moustafa A. Youssef <moustafa@cs.umd.edu>
Web pages : http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Wavelan-IEEE.html
http://www.fasta.fh-dortmund.de/users/andy/wvlan/
http://www.roelle.com/wvlanPPC/index.html
http://www.cs.umd.edu/~moustafa/mwvlan/mwvlan.html
Mailing list : http://lists.samba.org/pipermail/wireless/
Documentation : man page, headers
Configuration : Wireless Extensions & module parameters
Statistics : Wireless Extensions
Modes : Managed, Ad-Hoc and Ad-Hoc-demo
Security : WEP (based on hardware support)
Scanning : No
Monitor : No
Multi-devices : Yes
Interoperability : 802.11-DS and 802.11-b, interoperate with Windows
Other features : MTU selection, multicast, promiscuous mode, power management, WEP hardware encryption, SMP, multi-firmware and PPC support.
Non implemented : Some optimisations... Does not support HermesII.
Bugs : May have some performance issues
License : GPL
Vendor web page : http://www.wavelan.com/
http://www.proxim.com/
http://www.enterasys.com/wireless/
http://www.elsa.com/
http://www.hp.com/notebooks/us/eng/products/wireless/
http://www.buffalotech.com/
http://www.1stwave.de/
http://www.artem.de/

3.1.1 The device

Even if it uses the same name, the Wavelan IEEE product is completely different from the old Wavelan (see section 2.1), and totally incompatible in term of protocol and hardware interface. It is still built by Lucent, and it still operate in the 2.4 GHz ISM band (Direct Sequence), but the new hardware fully support the IEEE 802.11 protocol (and 802.11-b for the more recent versions) and is no longer based on a Ethernet MAC chip. There is only a Pcmcia version (the ISA version uses a ISA to Pcmcia bridge) and the different access points. Recently, Lucent has added a USB adapter and mini PCI version of the card for laptop (this one is based on a PCI-Pcmcia bridge).

To confuse the issue, Lucent has renamed the Wavelan IEEE as Orinoco (Wavelan was better IMHO), and this division was part of Lucent spin-off into a new company called Agere. Avaya (another Lucent spin-off) is also selling the Orinoco. Enterasys is also selling the Wavelan IEEE as RoamAbout 802 (a company formerly known as Cabletron, which was the former DEC networking division). Elsa is selling it in Europe as AirLancer 11 (on the other hand, the 2 Mb/s version is quite different). In Japan (and maybe also in Europe), Melco is selling it as Buffalo WLI-PCM-L11. Lately, more vendors have been joining the club, such as HP (HP 802.11b Wireless LAN), IBM (IBM High Rate Wireless LAN), Dell (Dell TrueMobile 1150 - on the other hand, the 1100 is an Aironet card), Compaq (Compaq WL 110, WL 210 and WL 215 - the WL100 and WL200 are PrismII based), 1stWave (1stWave PC-Card) and ARtem (ARtem ComCard). The Apple Airport is also derived from the Wavelan IEEE (see section 3.5).

The Wavelan IEEE saga never ends. Proxim bought the card and access point business of Agere (Agere kept the chipset and radio part), so now the same Orinoco cards are sold by Proxim under the name Orinoco Classic or Orinoco World (841X - with the big square antenna and using the same Agere Hermes chipset). In a bold marketing move, Proxim renamed all it's other lines of wireless cards as Orinoco, however those cards are not based on the Agere chipset but on Atheros chipset (846X, 847X and 848X). The Orinoco 11b (842X - 802.11b only with a short antenna) are based on the Agere HermesII chipset, which is different from the old chipset (and therefore not compatible with the usual Orinoco drivers). So, if the Proxim Orinoco card doesn't have a big square antenna and do support 802.11a or 802.11g, you can be sure it's not a true Orinoco.

The Wavelan IEEE appears to the PC as a standard network card and interfaces naturally with the networking stack. The configuration includes only setting the network name (ESSID), the rest is automatic (finding the equivalent BSSID and channel). As usual for Lucent, the documentation and website are rich.

The Lucent Wavelan IEEE is based on the Lucent Hermes chipset. As with all IEEE 802.11 products, the Hermes offer a fully featured MAC protocol, including MAC level acknowledgement (good news for all of us having dealt with the old Wavelan card), optional RTS/CTS, fragmentation, automatic rate selection, roaming. This seems exhaustive, but is mandatory for IEEE 802.11 compliance. Different version of the card include different level of security (bronze is basic, silver is with WEP (RC4-40 bits) and gold is with proprietary 128 bit encryption.

The MAC support both Managed and Ad-Hoc modes. However, the initial firmware for those cards did support only a non-compliant Ad-Hoc mode (called Ad-Hoc demo mode - which interoperate with most PrismII cards). In order to gain WiFi compliance, Lucent added in recent firmware (6.06 and greater) a second Ad-Hoc mode which is fully 802.11 compliant (called Peer to Peer mode or IBSS Ad-Hoc mode - and which interoperate with Aironet cards). Of course, the two Ad-Hoc modes are not interoperable.

The 2.4 GHz modem is an enhanced version of the previous generation, Direct Sequence Spread Spectrum (11 chips encoding), using both 1 and 2 Mb/s signalling rate (using effectively 22 MHz of bandwidth) and 5.5 and 11 Mb/s in second generation cards, diversity antennas and with 13 different frequencies (depending on the regulations).

Initially, the Wavelan was only offering 1 and 2 Mb/s bit rates (basic IEEE 802.11 DS standard). For a while, Lucent was also selling a "turbo" version of the card, which was adding 5 and 10 Mb/s bit-rates for shorter range using Lucent proprietary modulations (so, not compatible with 802.11-b).

Later, Lucent introduced the second generation of the Wavelan IEEE, still based on the same Hermes chipset, which is much cheaper and fully compliant with the new 802.11-b standard, supporting 1, 2, 5.5 and 11 Mb/s bit-rate (compatible with other 11 Mb/s products).

All Wavelan IEEE cards do not offer the exact same set of features, because Lucent keep changing the firmware. From firmware 1.00 to 4.52, Lucent was mostly adding features (encryption, power saving) and keeping it backward compatible, but firmware 6.04 and later created a major incompatibility. Firmware 6.06 and later implement a fully 802.11 compliant IBSS Ad-Hoc mode (on top of the Ad-Hoc demo mode). Firmware 6.04 dropped Fragmentation Threshold setting in favor of microwave oven robustness (an automatic fragmentation scheme). Firmware 6.16 did fix a few bugs with the IBSS Ad-Hoc mode (security, ESSID="any").

Agere has recently released a new HermesII chipset, derived from the venerable Hermes chipset. The most notable improvements are a higher integration (smaller & cheaper), a PCI interface with DMA support and a USB interface. The chip interface and firmware is not compatible with the old Hermes chipset, requiring specific driver support for HermesII. To my knowledge, this chipset is only used in the Proxim 842X cards.

3.1.2 The driver

Andreas Neuhaus is no longer working to improve this driver, therefore it's now discontinued in favor of the new Orinoco driver (see section 3). The driver is based on Lucent source code, which is a cut down version of their full driver. So, it lacks all the part about handling natively 802.11 frames and Lucent proprietary API, and initially it lacked some of the more fancy features of Lucent's driver, but Andreas is adding them slowly. Of course, the driver support all version of the card (bronze, silver, gold - basic, turbo, turbo 11 Mb/s) and is fully interoperable with Access Points and Windows nodes.

Andreas has done a very good job into providing features like Wireless Extensions (I must admit that I did help him quite a bit ;-) and many configuration parameters (station name, channel, mtu size). The new version adds Power management and encryption setting, change of the operating mode via Wireless Extensions, promiscuous and multicast support...

Andreas has done a lot of debugging of the driver and it seems now much more stable. Lastly, the ISA to Pcmcia and PCI to Pcmcia bridges may be a source troubles under Linux. The latest version of the driver fixes SMP support, multi-cards configuration, improve wireless.opts support, add IBSS Ad-Hoc mode support and support properly and sanely the various firmware releases.

Harald Roelle has developped a patch for this driver in order to fully support the PPC architecture. This patch mostly contain some bit order fixes. This patch should help other architecture with endianess issues. His patch was eventually integrated (with major changes) by David Hinds in version 1.0.6 of the driver. I added firmware detection support in 1.0.6 to properly handle all the various firmware releases and their variations (in particular the two Ad-Hoc modes), and fixed the remaining SMP bugs.

The driver does not support the USB and Mini-PCI version of the Wavelan.

Nowadays, Anton Blanchard is the official maintainer of the driver, with the help of David Gibson. David has done a complete rewrite of the driver (see section 3.2), so this driver won't be maintained anymore...

Moustafa has released a version of this driver with scanning support.

Note that Lucent has also released a binary library driver (see section 3.3) which is maybe more solid and performant than the driver of Andreas but lack complete support for Wireless Extensions.

3.2 Wavelan IEEE/Orinoco, PrismII and Symbol cards

Driver status : stable
Driver name : Pcmcia : orinoco_cs.o
PLX : orinoco_plx.o
PCI : orinoco_pci.o
Version : v0.15, CVS
Where : Linux kernel (2.4.21 ; 2.6.18)
Pcmcia package (3.1.34)
http://www.ozlabs.org/people/dgibson/dldwd
http://savannah.nongnu.org/projects/orinoco/
Maintainers : David Gibson <hermes@gibson.dropbear.id.au>
Pavel Roskin <proski@gnu.org>
Web page : http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Orinoco.html
Mailing list : http://sourceforge.net/mail/?group_id=44338
Documentation : man page, headers
Configuration : Wireless Extensions only
Statistics : Wireless Extensions
Modes : Managed, Ad-Hoc and Ad-Hoc-demo
Security : WEP (based on hardware support), 802.1x
Scanning : Wireless Extensions (v0.14 and later)
Monitor : Yes (v0.14 and later)
Multi-devices : Yes
Interoperability : 802.11-DS and 802.11-b, interoperate with Windows
Other features : MTU selection, multicast, promiscuous mode, power management, SMP, multi-firmware, multi vendors, PPC & ARM support, PLX and PCI support.
Non implemented : Does not support HermesII.
Bugs : WEP not functional on old Prism2 firmwares, some older driver versions don't handle properly some Symbol cards.
License : MPL and GPL
Vendor web pages : [Too many to list here]

3.2.1 The device

As explained in various sections, Lucent Wavelan-IEEE/Orinoco devices (see section 3.1), Intersil PrismII devices (see section 3.6) and Symbol High Rate devices (see section 3.10) are basically using the same MAC controller. This driver attempt to support all those devices, which are described in details in their own sections.

However, even though those devices use the same MAC controller and the same driver, those devices are not the same. Each vendor has its own firmware, so the set of features of those cards vary. Some differences are visible to the user (for example 128 bits key support), some are more related to performance and robustness tuning of the MAC.

Moreover, those devices don't use the same radio modem (mostly Lucent or Intersil) and same antennas. For PrismII cards, even the actual layout of the radio components on the card can make a huge difference. This will mostly translate into difference of coverage between the various cards (range and resistance to interference). The range between some cards may vary by a factor 2 in some conditions.

3.2.2 The driver

Anton Blanchard and David Gibson became official maintainers of the wvlan_cs driver (see section 3.1) in the end of 2000. David was not very happy about the state of wvlan_cs.

The HCF (the low level library provided by Lucent) hadn't been maintained since the initial release of the driver and was quite difficult to read and understand. While the higher layer of the driver had gone a long way and were robust and fully featured, the HCF was a mess and the cause of many problems (TxTimeout, driver corruption/crashes and else).

Rather than put up with that, David looked deeply in the low level of the wlan-ng driver from Mark (see section 3.6) and the FreeBSD driver and wrote a totally new driver combining a new low level core and the high level features of wvlan_cs. The end result was a driver much more readable, robust and well behaved than wvlan_cs. In the process, David added support for PrismII cards. Then, I fixed a few Wireless Extensions bugs, added some support for Symbol cards, and we pushed the driver in the kernel. The driver was initially named dldwd_cs and was renamed orinoco_cs at this point. Later on, David Hinds backported this driver to the Pcmcia package for users of earlier kernels.

The main goal of the driver is to support Wavelan IEEE/Orinoco cards and OEM. The driver support all the firmwares and features of those cards properly and fully (Ad-Hoc demo mode, IBSS mode, bit-rate, encryption keys...), and support all the features available in wvlan_cs (except module parameters) with less bugs.

Ben has added Airport support to this driver (see section 3.5), and the support of those cards is similar to Orinoco cards (i.e. most features supported properly).

Starting in release v0.6d, the support of Symbol cards and OEM is complete, at least for firmware 1.5 and 1.7. Bit rate, mode of operation (managed, ad-hoc IBSS and ad-hoc demo), encryption and power management are fully working. The release v0.8 added full support for later Symbol firmware 2.00 and 2.20. On firmware 2.20 and later, Power Management is disabled. Version of the driver from v0.10 to v0.12b don't work properly with Symbol cards due to a bug, so avoid those releases. Symbol CF cards are very different and supported in their own driver (see section 3.13).

The support of PrismII cards and clones is in progress. More debugging and testing need to be done, but the driver can set most features to some degree (Ad-Hoc demo mode, IBSS mode, bit-rate, encryption keys have been seen to work). It seems the upgrading firmware fixes problems related to encryption. However, the wlan-ng and HostAP drivers still have more features and are more tested...

Starting in release v0.8, the orinoco driver collection also support PLX adapters that are sold with some PrismII cards (via the orinoco_plx driver). Those adapters are not real Pcmcia adapters and the card looks to the system like a PCI card. The driver also support Pcmcia cards in regular ISA to Pcmcia or PCI to Pcmcia adapters, as long the Pcmcia adapter is recognised and configured properly by the Pcmcia package (which might be tricky).

Starting in release v0.11a, the orinoco driver collection also support PCI cards (all of them being PrismII cards - via the orinoco_pci driver). The standard driver does not support the various USB versions of the cards. There is various kind of MiniPCI implementation of the card, the driver support some of them (Pcmcia based - Lucent ; PCI based - PrismII) but not most (USB based - PrismII).

The latest version (v0.13b) seems to have fix most of the hardware reset problems of previous versions and seems to have fixed problems with Symbol firmwares. Pavel has integrated in v0.14 many previously external patches, such as as support for Wireless Scanning and Wireless Events, support for Monitor mode and support for 802.1x. Pavel also fixed support for kernel 2.6.X, dramatically improved Symbol firmware support and fixed a tons of bugs in v0.14.

Version 0.15-rc2 of the driver was merged into kernel 2.6.12. This brought all the features and bugfix above in the kernel. Since then, Pavel is continuing to fix and update the driver, pushing those changes into recent kernels, but he is no longer using version number (so I guess we are still at 0.15).

3.3 Lucent Wavelan, Enterasys Roamabout and Proxim Orinoco 8420

Driver status : stable, beta
Driver name : wavelan2_cs.o, roamabout_cs.o and wlags49_cs.o
Version : v6.16, v7.18 and v7.22
Where : http://greenblaze.com/proxim.html
http://www.agere.com/mobility/wireless_lan_drivers.html
http://www.agere.com/support/drivers/index.html
http://www.cs.umd.edu/~moustafa/mwavelan/mwavelan.html
Contact : Lucent support <usasupport@wavelan.com>
Maintainers : Richard van Leeuwen <rleeuwen@lucent.com>
Dean W. Gehnert <deang@tpi.com>
Moustafa A. Youssef <moustafa@cs.umd.edu>
Documentation : Extensive readme
Configuration : Module parameters, Wireless Extensions
Statistics : Wireless Extensions
Modes : Managed, Ad-Hoc and Ad-Hoc-demo
Security : WEP (based on hardware support), WPA
Scanning : Wireless Extensions
Monitor : No
Multi-devices : yes, but the ISA to Pcmcia bridge must be reconfigured
Interoperability : 802.11-DS and 802.11-b, interoperate with Windows
Other features : Power management and microwave oven robustness. Support HermesII cards (v7.08). WPA support.
Non implemented : Do not support all firmware releases
Bugs : ?
License : Binary only for the core + OpenSource Linux wrapper (up to v6.16), GPL (v7.08)
Vendor web page : http://www.wavelan.com/
http://www.enterasys.com/wireless/

3.3.1 The device

This is the same device as the previous entry (section 3.1).

3.3.2 The driver

Lucent has decided to not put all its eggs in the same basket and developed a bold strategy for the support of the Wavelan IEEE under Linux. Not only they have released some source code to allow the source driver mentioned above, but they have as well contracted Dean to release a driver based on a binary library. This gives Linux users the choice, a GPL full source driver to hack with and a stable full featured binary driver (the official term from Lucent is ``Linux Driver Source/Library'').

Dean has written the code interfacing between Linux and the library, and has put together a nice package easy to install and with documentation. As expected, the binary driver is probably more stable and than the full source driver mentioned above, with a slightly different set of feature, and offers all the features of Lucent Window drivers, plus a nice integration with Linux. This driver supports both the basic version of the card and the "turbo". The major drawback is the binary core, preventing the use on other architectures (PPC, Arm...).

Now, the driver is supported by Lucent, and they keep adding in it the same features they add to the Windows drivers (such as microwave oven robustness). Their also have added support for the IBSS Ad-Hoc mode (see discussion above). The latest version adds support for 2.4 kernel and many common Wireless Extensions. Note that Enterasys/Cabletron is also distributing a slightly modified version of this driver (usually an older one).

Moustafa has released a version of this driver with scanning support.

Recently, Agere has released a new version of this driver which is fully Open Source. This new version has support for the HermesII chipset found in the Proxim Orinoco 842X cards (but it seems it no longer support the old Orinoco cards - use the older driver version). It has also improved Wireless Extension support. Agere is still working hard on the driver and has recently added support for Wireless Scanning and WPA.

3.4 Orinoco USB cards and HP/Compaq multiport

Driver status : beta
Driver name : orinoco_usb.o
Version : 0.1.4
Where : http://www.nongnu.org/orinoco/
http://savannah.nongnu.org/projects/orinoco/
Maintainer : Manuel Estrada Sainz <ranty@debian.org>
Ramon Rey Vicente <ramon.rey at hispalinux.es>
Mailing list : http://sourceforge.net/mail/?group_id=44338
Documentation : headers
Configuration : Wireless Extensions only
Statistics : Wireless Extensions
Modes : Managed, Ad-Hoc and Ad-Hoc-demo
Security : WEP (based on hardware support)
Scanning : Wireless Extensions, with optional patch
Monitor : With optional patch
Multi-devices : Yes
Interoperability : 802.11-DS and 802.11-b, interoperate with Windows
Other features : MTU selection, multicast, promiscuous mode, power management, multi-firmware.
Non implemented : -
Bugs : -
License : MPL and GPL
Vendor web pages : http://www.wavelan.com/
http://www.proxim.com/
http://www.hp.com/

3.4.1 The device

The Orinoco-USB is of course related to other Wavelan-IEEE/Orinoco devices (see section 3.1). As most first generation USB designs, it is really a standard Orinoco Pcmcia card plugged into a Cypress EZ-USB USB-Pcmcia bridge. Such a setup of course brings some performance degradation due to USB high latency. The Orinoco card inside the device has the same exact features as other Orinoco Pcmcia cards and is 802.11b compliant.

Lucent, Agere and Proxim are directly selling this Orinoco device. HP/Compaq sells it as WL215 (standalone) and W200 (multiport option for Compaq laptops). Other vendors such as Melco are also selling this hardware. One of the particularity of this hardware is that the USB-Pcmcia bridge doesn't contain a firmware, so the driver need to upload the firmware at power up. On the other hand, the Pcmcia card behind the USB-Pcmcia bridge already contains its own firmware.

Note that most USB 802.11b cards are based on either the Intersil PrismII chipset (see section 3.6) or the Atmel chipset (see section 3.20), and are quite different from this hardware.

3.4.2 The driver

Manuel has managed to reverse engineer the Orinoco USB hardware and is providing a modified version of the Orinoco driver for Orinoco USB adapters. This driver only support Orinoco USB hardware, and not other USB cards. Because it is based on the Orinoco driver (see section 3.2), this driver offer the same extended feature set, such as Wireless Extension support.

The big difference with the standard Orinoco driver is firmware uploading. You will need to extract the firmware for the USB-Pcmcia bridge from the Windows driver using the tools provided on the driver web page. The firmware uploading support in Linux needed for this driver is currently being finalised, so check the latest driver documentation. On the other hand, the driver offer no support for updating the firmware in the Pcmcia card.

This driver was merged into the CVS of the Orinoco driver (see section 3.2). However, because the Orinoco maintainers are not happy with the locking strategy of this driver, this driver was never included in any release of the Orinoco driver and is not included in the kernel. The latest version of the driver may be found in the Orinoco CVS (see section 3.2).

3.5 Apple Airport

Driver status : stable
Driver name : airport.o
Version : 0.15
Where : Linux kernel (2.6.18)
http://www.ozlabs.org/people/dgibson/dldwd
http://ppclinux.apple.com/~benh/
Maintainer : Benjamin Herrenschmidt <benh@kernel.crashing.org>
Documentation : man page, headers
Configuration : Wireless Extensions & module parameters
Statistics : Wireless Extensions
Modes : Managed, Ad-Hoc and Ad-Hoc-demo
Security : WEP (based on hardware support)
Scanning : Wireless Extensions, with optional patch
Monitor : With optional patch
Multi-devices : No.
Interoperability : 802.11-DS and 802.11-b, interoperate with Mac-OS ;-)
Other features : MTU selection, multicast, promiscuous mode, power management, SMP and multi-firmware.
Non implemented : Some optimisations...
Bugs : -
License : GPL
Vendor web page : http://www.apple.com/airport/

3.5.1 The device

The Apple AirPort is in fact the Lucent Wavelan IEEE repackaged, so has the same characteristic as the Wavelan (see section 3.1). All Airport hardware is 802.11-b compliant (second generation of Wavelan IEEE) and support 11 Mb/s, and Apple seem to offer only the version with 40 bit encryption.

The AirPort card for the most Apple hardware is the OEM version of the Wavelan IEEE, but it uses a specific slot in those computers and the antennas are pre-integrated in the host. Most recent Apple machines offer this interface (iBook, PowerBook 2000 (aka Pismo), AGP G4s, recent iMacs (DV/SE)...). Note that this interface is not Pcmcia compatible even is the connector is the same, so this card can't be used in the normal PC-Card slot of other laptops. This is why this card work only in specific Apple hardware slot and only with a specific driver.

The Access Point (the famous flying saucer) is similar in functionality to the Lucent RG-1000 Residential Gateway, and is fully interoperable with other 802.11-b hardware.

3.5.2 The driver

The first version of the Airport driver was done by Benjamin Herrenschmidt by porting the driver of Andreas Neuhaus (see section 3.1) to support the Apple Aiport card. He has basically integrated the specific PPC patch of Harald Roelle, thrown away all the Pcmcia code and replaced it with the specific Apple initialisation code.

Apart from that, the driver is basically the same, with the same features and same bug ;-)

The second version of the driver was also done by Benjamin Herrenschmidt and is just a wrapper on top of the driver of David Gibson (see section 3.2), and was integrated in version 0.05 (kernel 2.4.5). This is a much cleaner solution, because both driver share the same source, so the feature set is identical and all improvements and bug fixes of the Orinoco driver are automatically in the Airport driver and vice-versa. For example, this driver gained both Scanning and Monitor mode support in version 0.14 and later.

3.6 Intersil PrismII based cards (the most common 802.11b cards)

Driver status : stable
Driver name : Pcmcia : prism2_cs.o
PLX : prism2_plx.o
PCI : prism2_pci.o
USB : prism2_usb.o
Version : 0.2.8
Where : http://www.linux-wlan.com/linux-wlan
Maintainers : Mark S. Mathews <mark@linux-wlan.com>
Solomon Peachy <solomon@linux-wlan.com>
Mailing list : http://www.linux-wlan.com/linux-wlan/
http://www.lifix.fi/extarchive/lwlan/
Documentation : Readme
ftp://ftp.linux-wlan.org/pub/linux-wlan-ng/FAQ
http://www.linux-wlan.org/docs/linux-wlan-FAQ.html
Configuration : Module parameters & configuration tool
Statistics : Statistic tool & Wireless Extensions
Modes : Managed, Ad-Hoc
Security : WEP (based on hardware support)
Scanning : Specific tool & Wireless Extensions
Monitor : Yes
Multi-devices : Yes
Interoperability : 802.11-DS and 802.11-b, interoperate with Windows
Other features : Quite exhaustive 802.11 support, Encryption, PPC support, PLX, PCI and USB support.
Non implemented : ?
Bugs : ?
License : MPL
Vendor web pages : http://www.compaq.com/products/wlan/index.html
http://www.magiclan.com/
http://www.dlink.com/products/p
http://www.linksys.com/products/
http://www.zoomtel.com/zoomair/za11index.html
http://www.nokia.com/corporate/wlan/card_c110.html
http://www.addtron.com/
http://www.gemtek.com.tw/
http://www.smc.com/
http://www.netgear.com/
http://www.ambicom.com/
http://www.teletronics.com/
http://www.intersil.com/design/prism/
http://www.conexant.com/

3.6.1 The device

The PrismII chipset is the successor of the PrismI chipset, described in the previous section (see section 2.4), and is build by Intersil (formerly Harris). Intersil offer this chipset and some reference design to various OEM, allowing them to build various 802.11-b products (cards or integrated in their own products). I expect that all the people that were formerly using the PrismI chipset will switch sooner or later to the PrismII.

The first manufacturers to offer PrismII cards were Samsung and Compaq (WL100, WL200, rumored to be a rebadged Samsung card), with a Pcmcia card, a PCI card and an Access Point. Other Prism vendors like ZoomAir, Nokia and GemTek did release later their own version of the PrismII cards, as well as Proxim (RangeLAN DS, Harmony 802.11b...). Some big networking vendors like D-Link, LinkSys, NetGear and SMC were also quick to jump on this new opportunity for them, as well as many smaller vendors like AddTron, Ambicom, Teletronics, Ampwave and many other that I can't list... The rule of thumb is that if your card is not listed in another section of the Howto, it could be a PrismII card (or not, see below).

Some notable exceptions which are not PrismII cards : the Compaq WL 110, WL 210 and WL 215 cards (which are Orinoco cards), the D-Link 650H (which is a Symbol card), most D-Link/LinkSys/SMC USB cards (which are Atmel cards), the SMC 2632W-v2 (which is an Atmel card), all 22 Mb/s cards such as the D-Link 650+/520+ (based on the TI chipset), all CardBus cards such as the new D-Link 650 (which is an ADMtek card), all 802.11a cards (which are Atheros or Intersil PrismDuette cards) and all 802.11g cards (which are Broadcom, Atheros or Intersil PrismGT cards). In fact, so many vendors seem to be moving away from the PrismII chipset (usually without warning and without changing the model name) and there is so many changes happening that it's impossible to keep track of who is using what.

Please note that everything that looks like a PrismII card may not be a PrismII card, and many people are quite confused about that. The cards described in this section use both a Intersil PrismII chipset and an Intersil firmware. Other vendors, such as Lucent (see section 3.1), Aironet (see section 3.14), Symbol (see section 3.10) and Atmel (see section 3.20) use part of the PrismII chipset but with their own firmware and therefore are not compatible (even if they sometime use the same device identification as PrismII cards and sort of work with PrismII drivers).

Most PrismII vendors offer regular Pcmcia cards for laptops. For desktop machines, the situation is a bit more messy, some vendors offer standard PCI-Pcmcia cards (where you can slot the Pcmcia card), dedicated PLX cards (that look like a regular PCI-Pcmcia bridge but is not) or some fully integrated PCI cards (Prism2.5). Some vendors also offer USB adapters (beware, some of them are Amtel cards, and all of them have performance issues). Lastly, some laptop include MiniPCI cards that may be either integrated PCI cards or USB adapters.

Like the initial PrismI design, the PrismII is fully compatible with 802.11 and include a 2.4 GHz Direct Sequence modem, with all the usual features (Roaming, WEP...).

The main differences between the PrismI and PrismII chipset are a higher integration, a higher performance modem and the replacement of the AMD controller with Intersil own design. The higher integration (5 chips instead of 8) allows to reduce the price and the size of the product, and to simplify the integration. The new physical layer (modem) has a better performance (but a lower transmit power), increasing range, speed and battery life, and is fully compliant with the 802.11-b standard (5.5 and 11 Mb/s). Finally, the new MAC controller handle most of the 802.11 functionality (instead of leaving it to the driver), which simplify driver development and help performance on slow devices (palmtop, embedded design).

The Prism2.5 and Prism3 chipsets are evolution of the PrismII chipset, offering even higher integration, lower cost and backward compatibility. With respect to the driver, these 3 chipset look the same, and therefore driver supporting PrismII hardware will also support Prism2.5 and Prism3 hardware.

Note that the PrismII firmwares are usually not of the highest quality and quite inconsistent from one release to another, both on the cards and on the Access Points, and you may have to try a few of them before finding the one that work for you. For example, encryption and IBSS ad-hoc mode seems to be working only in the latest firmwares (0.8.3 and later), and multicast is not working at all. It also usually takes a bit of time to get the workaround for the latest firmwares in the various Linux drivers. Latest firmware seem to have fixed most problems and have added the feature missing from earlier firmwares.

A few words about Ad-Hoc modes : like for Orinoco card, the firmware support two ad-hoc mode, the Ad-Hoc demo mode (not 802.11-b compliant, but reported to be Orinoco Ad-Hoc demo mode compatible) and the IBSS Ad-Hoc mode (802.11-b compliant). The IBSS Ad-Hoc mode is only available in firmwares 0.8.3 and later.

3.6.2 The driver

Who was more qualified to write this driver than Mark, from AVS, who already wrote the driver for the PrimsI cards ? In fact, Intersil did partner with Mark to get this driver written for us !

As usual with Mark, the driver is really complete and well written. It is currently only in beta stage, and Mark told me that he needs to add more documentation and debug some more features. The driver support both Pcmcia and PCI cards. This driver is compatible with Linux bridging software, includes a generic 802.11 interface, exposing the full 802.11 MIB to user space, and include hooks to build an Access Point. The driver also come with a configuration tools, an utility to dump 802.11 frames and a daemon responding to 802.11 events.

The release 0.1.10 fixes a number of long standing problems and include a number of patches and features that were floating around on the mailing lists. This version supports properly WEP encryption and Ad-Hoc mode. Note that the driver supports only IBSS ad-hoc mode (0.1.10 and later) and only for recent firmwares, whereas most cards also support the old ad-hoc demo mode.

The driver supports Pcmcia, PLX and PCI cards. The PLX card allow to add a Pcmcia card in a PCI slot, but does not support any of the Pcmcia functionality, so is not supported through the Pcmcia package but directly by the driver. PCI support is for fully integrated PCI cards or MiniPCI cards. Mark has also added USB support (only for Intersil USB cards, not Atmel cards).

Reyk has developped a patch that adds basic Wireless Extension support to the driver, and that was included in version 0.1.13. He needs help for testing and improving it.

Since then, Mark is concentrating on a Intersil 802.11a driver (not Atheros) and has transferred the maintenance of the driver to Solomon (a new AVS employee). Solomon is making the driver SMP compliant, cleaning it up and keeping up with the new firmwares from Intersil, and keeping up with new kernels. Solomon has also added pretty complete support for Wireless Extensions in 0.2.1, including Scanning support.

Mark is also selling a Wireless Development kit and an Access Point, based on a PPC platform and this driver.

3.7 Intersil PrismII support in the Orinoco driver

The Orinoco driver (see section 3.2) may be used with most PrismII cards.

3.8 Intersil PrismII driver with HostAP mode

Driver status : stable
Driver name : Pcmcia : hostap_cs.o
PLX : hostap_plx.o
PCI : hostap_pci.o
Versions : v0.4.9
Where : Linux kernel (2.6.17)
http://hostap.epitest.fi/
Maintainer : Jouni Malinen <jkmaline@cc.hut.fi>
Mailing list : http://lists.shmoo.com/pipermail/hostap/
Documentation : Readme, web page
Configuration : Module parameters and Wireless Extensions
Statistics : Wireless Extensions and /proc interface
Modes : Managed, Ad-Hoc, Master (HostAP), Repeater (WDS)
Security : WEP (hardware or host based), 802.1x, WPA
Scanning : Wireless Extensions
Monitor : Yes
Multi-devices : Yes
Interoperability : 802.11-DS and 802.11-b, interoperate with Windows
Other features : Host AP mode, bridging, access list, WDS, PLX and PCI support
Non implemented : ?
Bugs : ?
License : GPL
Vendor web pages : [Same as PrismII driver]

3.8.1 The device

This is the same device as the previous entry (section 3.6).

One of the most interesting feature of the standard PrismII firmware is that it can allow the host to act as an Access Point (HostAP mode). This allow to turn a regular PC with a Prism2 cards into an Access Point, allowing other nodes to connect to it. In HostAP mode, the card does only the critical part of the Access Point (sending beacons) and simply pass all the 802.11 management frames to the driver (which does 802.11 management itself).

Note that this HostAP mode doesn't exist or is not documented for other cards (non-PrismII firmwares). Also, it is possible to load special firmware in PrismII card which allows the card to perform the full Access Point functionality by itself (tertiary firmware).

3.8.2 The driver

Jouni has recently written this totally new driver for PrismII card. It is well written, it was probably inspired by the various other driver floating around and is much more simpler than the linux-wlan-ng driver (see section 3.6).

The driver has complete support for the various feature of the PrismII card (WEP, IBSS Ad-Hoc mode, scanning...), Monitor mode, very complete support for Wireless Extensions and offer various extra information in a /proc directory, making already an excellent choice for a standard wireless client.

What set this driver apart from the other driver is its support for HostAP mode. In this mode, the driver act as an Access Point on the air and does all the 802.11 management necessary. In this mode, the driver also allows bridging through the regular Ethernet bridge driver of Linux. This explain why this driver is use by most Linux Access-Point projects.

Jouni continues to refine his driver and has added PLX and PCI cards support, monitor mode, MAC address based access list and WDS support (to allow Access Point to communicate with each other). Jouni latest masterpiece is the addition of WPA support in the HostAP driver, and the associated user space wpa_supplicant.

In other words : impressive work...

This driver was included in kernel 2.6.14, and has been maintained in the kernel since without increasing the version number.

3.9 Samsung MagicLAN (binary library driver)

Driver status : beta
Driver name : swld11_cs.o
Version : 1.22
Where : http://www.magiclan.com/product/magiclan/download/mlist.jsp
Maintainer : Jae-Jun Lee <brucejr@samsung.co.kr>
Documentation : Readme
Configuration : Module parameters, Wireless Extensions and utility
Statistics : Wireless Extensions
Modes : Managed, Ad-Hoc
Security : WEP
Scanning : No
Monitor : No
Multi-devices : yes
Interoperability : 802.11-DS and 802.11-b, interoperate with Windows
Other features : Encryption, Proprietary Samsung API
Non implemented : ?
Bugs : ?
License : Binary only for the core + (?)source wrapper
Vendor web pages : http://www.sem.samsung.co.kr/
http://www.magiclan.com/

3.9.1 The device

The Samsung MagicLAN is one of the various products based on the Intersil PrismII chipset (see section 3.6 for full details). It's a fully featured wireless lan compliant with 802.11-b. The Compaq products are rumored to be the Samsung one, with a new sticker...

3.9.2 The driver

Samsung has released their own version of a PrismII driver for their card. The driver seems complete and well written, the new releases fixes more bugs and I had report of people successfully using it (with Samsung cards and even some LinkSys and D-Link cards).

The main difference with the PrismII driver of Mark (see section 3.6) is that the Samsung driver is based on a binary library (so, only available on x86 platforms), offer encryption and Ad-Hoc mode and offer some support for Wireless Extensions.

3.10 Symbol Spectrum24 High Rate, 3Com AirConnect, Intel PRO/Wireless and Socket Communication

Driver status : Beta (Pcmcia only)
Driver name : spectrum24t_cs.o
Version : 1.03 and 1.03-CF
Where : http://sourceforge.net/projects/spectrum24
ftp://ftp.symbol.com/pub/SOFTWARE/IEEE/PC_CARD/LINUX/
Contact : Brad LeFore <blefore@sj.symbol.com>
Maintainer : Lee John Keyser-Allen <frozbiz@hotmail.com>
Discussion forums : http://sourceforge.net/forum/?group_id=11099
Documentation : Readme file
Configuration : module parameters
Statistics : None
Modes : Managed, Ad-Hoc
Security : WEP
Scanning : No
Monitor : No
Multi-devices : -
Interoperability : 802.11-DS and 802.11-b, interoperate with Windows
Other features : Multicast, WEP encryption and support for CF cards
Non implemented : -
Bugs : -
License : GPL or BSD
Vendor web page : http://www.symbol.com/products/wireless/wireless.html
http://support.intel.com/support/network/wireless/
http://www.3Com.com/
http://www.socketcom.com/

3.10.1 The device

Despite being a long time proponent of Frequency Hopping, Symbol couldn't ignore the success of 802.11-b. After a strategic agreement with Intel, Symbol is back with a complete line of 802.11-b products, that are called Spectrum24 High Rate (to better confuse them with their old FH products). Symbol still sell mostly to vertical markets through VAR, but both 3Com and Intel are repackaging Symbol cards, as Intel PRO/Wireless and 3Com AirConnect. The Symbol CF card is also sold by Socket Communications.

Of course, there are exceptions : the Symbol/Socket CF cards (Compact Flash) and the Intel 2011B card don't have a built in firmware and require a specific version of the driver (called CF). On the other hand, the 3Com/Intel PCI cards are PrismII cards, and the latest 3Com 802.11b cards include various chipsets (see section 3.18).

The card is mostly sold in the Pcmcia form factor, along with the Access Point. There is a PCI version that looks like a Pcmcia card in a regular PCI to Pcmcia slot. The main originality of Symbol is that it offer those famous "all-in-one" products (PDA + barcode + wireless) with 802.11-b (beware, they share the same model numbers as the non-802.11b devices). Recently Symbol released a Compact Flash (CF) version of their card called Wireless Networker which has an amazing form factor.

The Symbol product is composed of the Intersil PrismII chipset (see section 3.6) with Symbol own MAC controller (which is originally derived from the same core as the MAC from Lucent, Aironet and Intersil). From Symbol, we can expect a design giving good quality and performance.

The MAC has all the usual features of the 802.11 standard, like MAC level retransmission, RTS/CTS, fragmentation, auto bit-rate selection, power saving, WEP encryption and roaming, which extensive configurability. The physical layer has the classic PrismII feature, supporting 1, 2, 5.5 and 11 Mb/s.

3.10.2 The driver

The driver was initially written by TriplePoint, and Lee has taken over the maintenance. Not surprisingly, the driver is very similar to the Wavelan-IEEE binary driver (except for being full source), to the point of mentioning "Turbo" cards (what Symbol calls "High Rate").

The driver is well written, has an extensive collection of module parameters and has been tested successfully with Symbol, 3Com and Intel cards. Lee plans to add Wireless Extensions and fix the few remaining bugs...

The version 1.01 of the driver fixes some bugs related to higher bit rate (11 Mb/s) and encryption. The version 1.02, adds support for kernel 2.4.X and disable power management (doesn't work on latest firmwares).

Symbol has recently release a separate version of this driver to support Compact Flash cards. Compact Flash cards need a specific driver because they don't have the firmware stored on the card and therefore the driver has to download the firmware to the card after each reset.

3.11 Ericsson WLAN 11 Mb/s

Driver status : First shot
Driver name : eriwlan_cs.o
Version : 1.0 (2000-10-11)
Where : http://www.ericsson.com/wlan/su-downloads11.asp
Maintainer : Christian Olrog <Christian.Olrog@ericsson.com>
Documentation : Readme file
Configuration : module parameters and /proc interface
Statistics : /proc interface
Modes : Managed, Ad-Hoc
Security : WEP
Scanning : No
Monitor : No
Multi-devices : -
Interoperability : 802.11-DS and 802.11-b, interoperate with Windows
Other features : Power management
Non implemented : -
Bugs : -
License : GPL
Vendor web page : http://www.ericsson.com/wlan/

3.11.1 The device

After their success with wide area communications (GSM and co.), Ericsson decided to expand in new markets and started looking seriously at local connectivity. Ericsson is of course the main driving force behind BlueTooth (see section 8), but they realised pretty quickly the BlueTooth would not fulfil the need of the Wireless LAN market. Ericsson is also pushing hard HiperLAN II (see section 8), a high performance system (54 Mb/s) in the 5 GHz band with strong quality of service support.

The initial Ericsson Wireless LAN products were OEM of BreezeCom pro.11 products (Frequency Hopping, 3 Mb/s - see section 2.11). Due to the success of 802.11-b, their second product line are fully 802.11-b compliant, and are in fact OEM of the Symbol cards (see section 3.10). As such, this product has all the usual 802.11-b features...

3.11.2 The driver

This driver apply only to the 11 Mb/s version of the Ericsson card. This is only the second driver written by Christian from scratch, after the BreezeCom driver (see section 2.11 - this other driver applies to Ericsson 3 Mb/s cards). And as usual for him, the source code is well written, concise and clean. Impressive job !

This driver is very new, so I don't have yet report of its use. The driver seems to support only a minimal set of configuration and statistics for now. Christian told me that it should work with other Symbol cards with minor changes, and that the driver has been tested with IPsec and MobileIP. I hope to have more info about it at a later date...

3.12 Symbol High Rate support in the Orinoco driver

The Orinoco driver (see section 3.2) may be used with most Symbol HR cards.

3.13 Symbol CF driver based on the Orinoco driver

Driver status : Beta
Driver name : spectrum_cs.o
Version : v0.15
Where : Linux kernel (2.6.18)
http://www.red-bean.com/~proski/symbol/
http://savannah.nongnu.org/projects/orinoco/
Maintainer : Pavel Roskin <proski@gnu.org>
Documentation : Readme file
Configuration : Wireless Extensions only
Statistics : Wireless Extensions
Modes : Managed, Ad-Hoc and Ad-Hoc-demo
Security : WEP (based on hardware support)
Scanning : Wireless Extensions, with optional patch
Monitor : Yes
Multi-devices : Yes
Interoperability : 802.11-DS and 802.11-b, interoperate with Windows
Other features : Similar to Orinoco driver (including ARM support)
Non implemented : -
Bugs : -
License : MPL and GPL
Vendor web page : [Same as Symbol HR driver]

3.13.1 The device

This is the same device as the previous entry (section 3.10).

Note that this driver is specific to the Compact Flash (CF) version of the card and the Intel 2011B.

3.13.2 The driver

The Orinoco driver (see section 3.2) already includes support for regular Symbol HR cards. However, the Compact Flash cards don't work with the standard Orinoco driver because they lack built in firmware. This is the same reason why there is two different Spectrum24 drivers (see section 3.10).

Pavel has created a new driver based on the Orinoco driver and Spectrum24-CF driver for those cards. It is similar to the regular Orinoco Pcmcia driver, but add the firmware download at each reset necessary for those cards. As the core of the driver is common with the Orinoco driver, this driver has the exact same feature set (which is quite extensive - see section 3.2). This driver is now integrated in the Orinoco driver collection (v0.14 and later), and no longer distributed separately. It is now part of the Linux kernel (2.6.14 and later).

Note that for cards that don't require the firmware download (regular Pcmcia cards), it is recommended to use the regular Orinoco driver instead of this one.

3.14 Aironet ARLAN 4500, 4800, Cisco 340 and Cisco 350 series

Driver status : stable
Driver names : ISA, PCI : airo.o
Pcmcia : airo_cs.o
Version : 1.4
Where : Linux kernel (2.6.17)
Pcmcia package (3.1.26)
Maintainers : Benjamin Reed <breed@almaden.ibm.com>
Javier Achirica <achirica@gmail.com>
Dan Williams <dcbw@redhat.com>
Matthieu Castet <castet.matthieu@free.fr>
Web page : http://sourceforge.net/projects/airo-linux/
Mailing list : http://sourceforge.net/mail/?group_id=24926
Documentation : README file
Configuration : /proc interface and Wireless Extensions
Statistics : /proc interface and Wireless Extensions
Modes : Managed, Ad-Hoc
Security : WEP (hardware), AES (host), MIC, 802.1x, WPA
Scanning : Wireless Extensions
Monitor : Yes
Multi-devices : N/A
Interoperability : 802.11-DS and 802.11-b, interoperate with Windows
Other features : Support MPI cards (Mini PCI)
Non implemented : -
Bugs : -
License : MPL & GPL
Vendor web page : http://www.aironet.com/

3.14.1 The device

Aironet has been the producer of some of the most performant wireless LANs for a long time. Aironet was a division of Telxon, and was spun-off when Symbol, one of their competitor, did aquire Telxon. After a short independent life, Aironet was acquired by Cisco.

The previous section was dealing with Aironet old pre-802.11 products (see section 2.8), this section deals with their more recent 802.11 compliant products. Their first 802.11 products were the 3500 family, Frequency Hopping (1 and 2 Mb/s), and 4500, Direct Sequence (1 and 2 Mb/s).

The Arlan 4500 family is 802.11 compliant wireless LANs in the 2.4 GHz ISM band, and is Direct Sequence. It includes an ISA, PCI, Pcmcia, serial, Ethernet and multi-Ethernet versions, plus the Access Point.

These cards are based on the Harris Prism chipset, like many other cards (see section 2.4), but Aironet are using their own MAC controller. The 4500 offer standard 1 and 2 Mb/s bit rate. The MAC includes all the standard 802.11 features, with Power Saving, WEP, Ad-Hoc mode and roaming, plus a lot of Aironet extensions (short headers, variable base rate...). Conform to their reputation, their MAC is one of the richest in term of features, and one of the most performant.

The 3500 family (Frequency Hopping) eventually died, and I won't talk about it here.

The 4500 family was quickly followed by the 4800 family, still based on the Prism chipset, adding 5.5 and 11 Mb/s bit rate, either in MBOK (proprietary) or CCK, which is 802.11-b compliant. The 4800 can do encryption only at 1 and 2 Mb/s (this limitation was removed in the 4800B).

With introduction of the PrismII chipset, Aironet did release the 4800B family. It is functionally equivalent to the 4800, except that the new PrismII chipset allows lower price, greater sensitivity but force a lower transmit power (30 mW). Aironet still use their own MAC controller in the 4800B (and not the new PrismII MAC - see section 3.6).

After the acquisition by Cisco, the Aironet 4800B was renamed Cisco 340 series (exact same hardware, new name). Dell also sell the same hardware under its own brand as Dell TrueMobile 1100 (on the other hand, the TrueMobile 1150 is a Wavelan IEEE).

Like Lucent, Cisco offer different cards with different level of encryption. The cards labelled 340 feature no encryption, the cards labelled 341 feature 40 bits encryption and the cards labelled 342 feature 128 bits encryption. Moreover, some versions of the Pcmcia card are sold with antenna but others without antennas.

Cisco has now released the Cisco 350, a new family of 802.11b cards. From the information I did gather, it seems to be equivalent to the 340 series with a greater transmit power (100 mW instead of 30 mW). The Cisco 350 also improves the performance of the AP and introduce greater security (Radius authentication and co).

Cisco has also released a Mini-PCI (MPI) version of the Aironet 350, to be added in laptops that support a Mini-PCI slot. For some strange reason, this hardware is slightly different from the regular Aironet 350 PCI.

Cisco has also a wide range of IEEE 802.11g products, those are completely different from this hardware, and most often they are Atheros cards (see section 4.2).

3.14.2 The driver

Ben has produced a solid driver for the Aironet card, The driver supports the ISA, PCI and Pcmcia cards (both 4500, 4800 & 4800B versions), it looks fairly complete and debugged, with a nice /proc interface. The driver also has very complete WEP support.

Ben also told me that the driver was able to recognise the PC3500 cards, but more work would be needed there to get it fully working.

Recently, I've started adding Wireless Extension to this driver. Ben was kind enough to integrate properly my work in his driver. Then, Javier Achirica did an amazing job of completing Wireless Extension support (power management, spy and co), and this driver has one of the most complete Wireless Extension support of all.

Then, Javier added to the driver the Cisco proprietary API, which allow communication with Cisco utilities (see section 3.16) and, amongst other things, flashing new firmware on the card. All this amazing work is in the latest release from Ben (1.5). He also wrote a couple of open source utilities allowing to dump all the register of the card and to flash new firmwares through this API.

Later, the driver has been integrated in the Linux kernel (2.4.6 and later) and moved to SourceForge. Javier has also added the ability to dump raw 802.11 frames. Then Javier did extensive work to fix locking (SMP support), add monitor mode and Wireless Scanning support (in version 1.4).

Ben attempted to add support to MPI card and added code for those cards in the CVS. The work on MPI card was completed and now MPI cards are properly supported.

Ben and Javier are no longer active. Dan has fixed various bug and kept the driver up to date in the kernel, and Matthieu has added WPA support.

3.15 Aironet ARLAN 802.11 (alternate driver)

Driver status : stable
Driver name : ISA, PCI : aironet4500_card.o
Pcmcia : aironet4500_cs.o
Version : 0.1
Where : Linux kernel 2.3.31 to 2.5.X
Maintainer : Elmer Joandi <elmer@linking.ee>
Documentation : Configure.help file
Configuration : /proc interface
Statistics : /proc interface
Modes : Managed, Ad-Hoc
Security : WEP
Scanning : ?
Monitor : No
Multi-devices : -
Interoperability : 802.11-DS and 802.11-b, interoperate with Windows
Other features : -
Non implemented : Pcmcia interface
Bugs : Buggy SMP support.
License : GPL
Vendor web page : http://www.aironet.com/

3.15.1 The device

This is the same device as the previous entry (section 3.14).

3.15.2 The driver

To some, it may seem that this is a totally new driver that has just popped up in the kernel with little warning. In fact, Elmer had developed this driver for a commercial company (SpectrumWireless) a while back and they agreed to let him release it in GPL form after some month.

The code is very complete, especially the /proc interface. It comes as four modules, the generic core, the /proc interface, the PCI/ISA interface and the Pcmcia interface. The driver support both the 4500 and 4800 families. Unfortunately, the Pcmcia interface is incompatible with the Linux Pcmcia support and doesn't work well.

Elmer told me that compared to Ben driver, his driver was probably more robust and featured but much less friendly. In essence, the focus was slightly different, so each driver has it own strength.

This driver was removed from the Linux kernel during 2.5.X, so it is no longer available in kernel 2.6.X.

3.16 Cisco/Aironet 802.11 (Cisco driver)

Driver status : stable (rock solid)
Driver name : ISA, PCI : airo.o
Pcmcia : airo_cs.o
Version : 2.1
Where : http://www.cisco.com/public/sw-center/sw-wireless.shtml
Maintainer : Cisco
Documentation : Text files
Configuration : Cisco utilities, Wireless Extensions
Statistics : Cisco utilities, Wireless Extensions
Modes : Managed, Ad-Hoc
Security : WEP (hardware), AES (host), MIC
Scanning : No
Monitor : No
Multi-devices : -
Interoperability : 802.11-DS and 802.11-b, interoperate with Windows
Other features : -
Non implemented : -
Bugs : -
License : Cisco open source license
Vendor web page : http://www.aironet.com/

3.16.1 The device

This is the same device as the two previous entries (section 3.14).

3.16.2 The driver

Recently, Cisco decided to get more involved with supporting their Wireless LAN cards under Linux. Rather than developing an entirely new driver, they decided to base their work on Ben's driver (section 3.14), which is a good idea. One of the key person behind this operation was Jim Veneskey.

The main contribution of Cisco is a proprietary API, which allow communication with Cisco utilities and, amongst other things, flashing new firmware on the card, and of course a set of utilities which are mostly identical to the Windows utilities. They also provided nice installation scripts and did lot's of testing of the driver to guarantee its stability (Cisco usually do some pretty intensive testing of their products).

However, even if Cisco regularly synchronise with Ben's driver (section 3.14), this one continues to improve. As they are derived from the same base, it's easy to compare the two drivers. In term of features, I guess that Ben's driver is winning, because it now has the Cisco API of this driver and more complete Wireless Extensions support. However, I believe that Cisco has an edge in term of stability.

I hope that the two drivers will merge rather than diverge, and that changes will be propagated from one to the other, so that we have a driver with both features and rock solid stability, but only time will tell... Cisco told me that they were going to try to catch up with Ben's driver.

Note that Cisco changed their web site and their driver is no longer available as a public download. I can not check if the driver still exist and what changed has been made to it.

3.17 No Wires Needed Swallow (and BreezeCom DS11)

Driver status : stable
Driver name : swallow_cs.o
Version : 0.7.0 (kernel 2.4.0) and 0.4.0 (kernel 2.2.16 - older version)
Where : http://www.xs4all.nl/~bvermeul/swallow/
Maintainer : Bas Vermeulen <bvermeul@blackstar.xs4all.nl>
Documentation : README file
Configuration : Module parameters, Wireless Extensions, /proc interface
Statistics : no
Modes : Managed
Security : WEP, AES
Scanning : Wireless Extensions
Monitor : No
Multi-devices : unknown
Interoperability : 802.11-DS and 802.11-b, interoperate with Windows
Other features : Security (very complete), roaming table
Non implemented : Multicast
Bugs : -
License : GPL
Vendor web page : http://www.nwn.com/
http://www.breezecom.com/

3.17.1 The device

No Wires Needed is a small company in the Netherlands building a range of 802.11 DS devices, including a Pcmcia card (Swallow), an Access Point and a Hub. They also offer a ISA version using a ISA to Pcmcia bridge. They have two version, the 550 (5.5 Mb/s) and the more recent 1100 (11 Mb/s). BreezeCom also EOM this card for their DS.11 range (the PC-DS.11).

The Swallow delivers all the features expected from a 802.11 compliant device, with ad-hoc networking, authentication and roaming. The main difference with other 802.11 devices is that NWN offers some strong link layer encryption and a key management and distribution system.

The modem is the famous Prism chipset used in many other cards (see section 2.4), which is 2.4 GHz Direct Sequence, with 1 Mb/s, 2 Mb/s, 5.5 Mb/s and 11 Mb/s bit rate. No Wires Needed use their own MAC design on an embedded ARM processor, and not the AMD or PrismII MAC controller. This give them more performance and flexibility. Now that Intersil has acquired No Wires Needed, Intersil can offer 2 different 802.11 MAC controller !

3.17.2 The driver

Bas has implemented a quite complete driver for the Swallow 550 and 1100 card (Pcmcia). He has patiently debugged the driver to fix races, timeouts and increase the performance. The driver is working for both the NWN and the BreezeCom cards.

Bas has also implemented Wireless Extension support for the security support, and support the full range of security features in the driver. You can also configure the ESSID on the fly with Wireless Extensions...

Lately, Bas has been doing lot of work on roaming support. The driver export the roaming tables in a /proc interface, allowing the implementation of a user space roaming daemon. This interface also contains some other configuration parameters.

3.18 No Wires Needed 1148, old 3Com Wireless LAN XJack

Driver status : stable
Driver name : poldhu_cs.o
Version : 0.2.13 (for kernel 2.4.X), 0.3.1 (for kernel 2.6.X)
Where : http://www.xs4all.nl/~bvermeul/swallow/
Maintainer : Bas Vermeulen <bvermeul@blackstar.xs4all.nl>
Documentation : README file
Configuration : Module parameters, Wireless Extensions, /proc interface
Statistics : no
Modes : Managed, Ad-Hoc
Security : WEP, AES
Scanning : Wireless Extensions
Monitor : No
Multi-devices : unknown
Interoperability : 802.11-DS and 802.11-b, interoperate with Windows
Other features : Security (very complete)
Non implemented : Multicast
Bugs : -
License : GPL
Vendor web page : http://www.nwn.com/
http://www.3Com.com/

3.18.1 The device

Recently, No Wires Needed has replaced the Swallow 550 and 1100 with a new 802.11-b card, the 1148. The design and the feature of this card seems very similar to their previous one (see section 3.17) : The MAC is the same ARM core and they still offer AirLock encryption. The main difference seems that they are now using a PrismII modem (see section 3.6).

3Com has also released a quite rare old Wireless LAN XJack card (3CRWE62092A) which is a clone of the NWN 1148 (this card). On the other hand, the newly released OfficeConnect Wireless LAN cards (3CRSHPW196/696 - with or without the XJack antenna) and new Wireless LAN XJack card (3CRWE62092B) are Atmel cards (see section 3.20). The even newer OfficeConnect CardBus card (3CRSHPW796) is an ADMTek card (see section 3.23). The older AirConnect Pcmcia cards (3CRW737A/B) are clone of the Symbol HR cards (see section 3.10), and the AirConnect PCI card (3CRW777A) is a PrismII PLX card (see section 3.6). The OfficeConnect 11g card (3CRWE154G72) is an Intersil PrismGT card (see section 4.3), and the 11a/b/g cards (3CRPAG175/3CRDAG675) are Atheros cards (see section 4.2).

Coming back to the NWN 1148, the main difference between the 3Com 3CRWE62092A and NWN 1148 cards is the removal of AirLock encryption (WEP is still available), the addition of Ad-Hoc mode, and of course the famous pop-up antenna ;-)

3.18.2 The driver

Because the card is so similar to the Swallow, it was natural that a driver for this card would be derived from the Swallow driver. In fact, No Wires Needed contacted Bas to implement a driver for the new card. Bas modified his Swallow driver and created this driver which offer very similar functionality and feature as the Swallow driver (see section 3.17).

So, the driver includes complete security support, Wireless Extensions and roaming support. The driver also include read only support for most low level commands (SNWNMP).

Bas has also added in the driver the necessary support for the 3Com WLAN XJack cards, including its specific features. All features of the card (ad-hoc mode, encryption) are configurable through Wireless Extensions.

3.19 Nokia C110/C111

Driver status : ???
Driver name : nokia_c110.o
Version : 2.05
Where : http://www.nokia.com/nokia/0,5184,2718,00.html
Maintainer : Nokia
Documentation : Readme
Configuration : Specific Pcmcia scripts
Statistics : /proc file
Modes : Managed, Ad-Hoc
Security : WEP
Scanning : No
Monitor : No
Multi-devices : yes
Interoperability : 802.11-DS and 802.11-b, interoperate with Windows
Other features : Encryption, multicast, user profiles
Non implemented : ?
Bugs : ?
License : Binary only for the core + Nokia OpenSource Linux wrapper
Vendor web pages : http://www.nokia.com/corporate/wlan/

3.19.1 The device

In the past years, Nokia has slowly moved into the Wireless LAN market. They started by buying Intalk, a company producing PrismI clones (see section 2.4), and Nokia continued selling those cards, renamed Nokia C020 and C021. While being busy working on BlueTooth and HiperLanII, Nokia didn't forget 802.11-b and released a new set of card, the C110 and C111.

As can be expected, the Nokia C110/C111 is another PrismII clone (see section 3.6). On the other hand, it seem that Nokia has changed quite a few things compared to the original PrismII design, for example they have added a Smart Card reader on the Pcmcia card (for security settings).

3.19.2 The driver

Nokia initially quietly made this driver available in the registered only part of their web site and didn't mention it anywhere, fortunately I have my spies to inform me ;-). Later on, they moved this driver to their official driver page on their public web site. This driver is only for the C110/C111, on the other hand the C020 is supposed to work with the linux-wlan package (see section 2.4).

The driver contains a very thin source wrapper on top of the binary part (one version for kernel 2.2.X, one for 2.4.X). On the other hand, the package come with exhaustive set of complex Pcmcia scripts to configure the card and enable profiles.

The driver works in infrastructure and Ad-Hoc mode, and support WEP.

3.20 Atmel AT76C502A/AT76C503A cards (802.11b USB and Pcmcia)

Driver status : stable
Driver name : Pcmcia :fastvnet_cs.o
USB :vnetusbX.o
Version : v3.4.1.0 ; 2002-12-09
Where : http://atmelwlandriver.sourceforge.net/
Maintainers : Stavros Markou <smarkou@patras.atmel.com>
Titos Mpetsos <tmpetsos@patras.atmel.com>
Ron Smith (Wireless Extensions)
Web page : http://atmelwlandriver.sourceforge.net/howto/howto.html
http://www.fuw.edu.pl/~pliszka/hints/wireless.html
http://www.gemtek.com.tw/faq_download.htm
http://www.houseofcraig.net/belkin_howto.php
Mailing lists : http://sourceforge.net/mail/?group_id=59001
http://iprserv.jura.uni-leipzig.de/mailman/listinfo/atmel-wlan-usb
Documentation : Readme files
Configuration : Specific tools, Wireless Extensions
Statistics : Wireless Extensions
Modes : Managed, Ad-Hoc
Security : WEP, WPA
Scanning : No
Monitor : No
Multi-devices : Yes
Interoperability : 802.11-DS and 802.11-b, interoperate with Windows
Other features : -
Non implemented : Intersil radio support
Bugs : -
License : GPL
Vendor web page : http://www.atmel.com/atmel/products/prod32a.htm
http://www.3Com.com/
http://www.gemtek.com.tw
http://www.dlink.com/products/
http://www.linksys.com/products/
http://www.smc.com/

3.20.1 The device

Atmel has decided to join the selected club of company selling 802.11b chipsets. Their design is based on an ARM7 processor, and offer a Pcmcia and a USB version. The USB version is by far the most popular, because it was first to market. Various 802.11b radios can be used with this chipset (such as the PrismII radio). Very little public information is available about those products, but as they are 802.11 compliant we can expect the usual set of features.

Of course, with any USB cards the main issue is performance. The streaming abstraction of USB doesn't work well with register/memory based chipset designs and slow down operations. Also, USB add a noticeable latency. I currently don't have any data on how well those cards performs in the respect.

Linksys and D-Link are selling various USB products based on this chipset, such as Gemtek WL-280, D-Link DWL-120, Linksys WUSB11... It seems that the SMC 2632W is a Pcmcia card also based on the Atmel chipset.

The newly released 3Com OfficeConnect Wireless LAN cards (3CRSHPW196/696 - with or without the XJack antenna) and new 3Com Wireless LAN XJack (3CRWE62092B) are also Atmel Pcmcia cards.

3.20.2 The driver

Atmel decided to release themselves a Linux driver. This driver is in fact a set of driver for the different combination of controllers and radios, and was initially based on a binary library. However, Atmel changed their mind and eventually released the driver as full source GPL. The USB versions work with both uhci and ohci USB drivers. The driver support WEP and Ad-Hoc mode.

The package from Atmel include specific configuration tools (command line and X-Window). Just after the driver was GPL'ed, the support for Wireless Extensions was fixed and greatly enhanced by Ron (Wireless Tools can now be used to configure the card). Lately, Atmel has improved and enhanced the USB driver, but also removed support for Intersil radio, so you will need to use older version of the driver for products using Intersil radio. On the other hand, the Pcmcia driver seems to be still based on an older version of the code.

Lately, the driver has gained support for kernel 2.6.X, better support for Wireless Extensions and support for WPA.

3.21 Atmel USB alternate driver

Driver status : in development
Driver name : USB : at76_usb.o
Version : 0.16 (for kernel 2.6.X), 0.12 (for kernel 2.4.X)
Where : http://at76c503a.berlios.de/
http://git.80211libre.org/at76_usb.git/
Maintainers : Jörg Albert <joerg dot albert at gmx dot de>
Oliver Kurth <oku at masqmail dot cx>
Guido Guenther <agx@sigxcpu.org>
Pavel Roskin <proski@gnu.org>
Web page : http://at76c503a.berlios.de/
http://www.wireless.org.au/~jhecker/atmeldrv/atmeldrv.html
Mailing lists : http://lists.berlios.de/pipermail/at76c503a-user/
https://lists.berlios.de/pipermail/at76c503a-develop/
Documentation : Readme files
Configuration : Wireless Extensions
Statistics : Wireless Extensions
Modes : Managed, Ad-Hoc
Security : WEP
Scanning : Wireless Extensions (0.12 and later)
Monitor : No
Multi-devices : ?
Interoperability : 802.11-DS and 802.11-b, interoperate with Windows
Other features : Intersil radio support
Non implemented : -
Bugs : -
License : GPL
Vendor web page : http://www.atmel.com/atmel/products/prod32a.htm
http://www.gemtek.com.tw
http://www.dlink.com/products/
http://www.linksys.com/products/

3.21.1 The device

This is the same device as the previous entry (section 3.20).

3.21.2 The driver

Oliver and a group of people were not happy about the official Atmel driver and its development (section 3.20), and therefore he started to write an alternate driver from scratch, based on the information available in the official driver, and soon those other people started to help him.

The driver support only USB devices, and it support both Intersil and RFMD radios. At this time, the new driver is still in development, and therefore still has some limitations, but it already support both infrastructure and ad-hoc mode, and has some Wireless Extension support.

As Olivier was no longer active, Jörg took over the driver and is now fixing many bugs, making it more robust and adding a few missing features. For example, version 0.12 adds Wireless Scanning support, and is the last version to support kernel 2.4.X.

When Jörg became inactive, Guido and Pavel took over the driver. Most of their work in subsequent releases (0.13 to 0.16) was all the driver cleanup necessary to be able to integrate the driver in the kernel (this integration has not happened yet).

3.22 Atmel Pcmcia alternate driver

Driver status : in development
Driver name : PCI : atmel_pci.o
Pcmcia : atmel_cs.o
Version : 0.9
Where : Kernel 2.6.20
Maintainers : Simon Kelley <simon@thekelleys.org.uk>
Mailing list : http://lists.berlios.de/pipermail/at76c503a-user/
Documentation : Readme files
Configuration : Wireless Extensions
Statistics : Wireless Extensions
Modes : Managed, Ad-Hoc
Security : WEP
Scanning : Wireless Extensions
Monitor : No
Multi-devices : ?
Interoperability : 802.11-DS and 802.11-b, interoperate with Windows
Other features : Firmware loading via HotPlug
Non implemented : -
Bugs : -
License : GPL
Vendor web page : http://www.atmel.com/atmel/products/prod32a.htm
http://www.3Com.com/
http://www.smc.com/

3.22.1 The device

This is the same device as the previous entry (section 3.20).

3.22.2 The driver

Simon also was not happy with the original Atmel driver. He decided to rewrite the Pcmcia/PCI driver based on the original code, with the main target being integration in kernel 2.6.X, which was done on 2.6.5. Simon did an extensive amount of work on the driver, for example his driver has very complete Wireless Extension support including Wireless Scanning. However, this driver is not compliant with kernel 2.4.X and earlier.

This driver was mostly tested with Pcmcia cards, however Simon also managed to get a PCI card for testing and added PCI support in the driver. Some of those cards don't have firmwares and therefore need to use the new firmware uploading facility of Linux (via HotPlug).

3.23 ADMtek ADM8211 based cards

Driver status : beta
Driver name : PCI & Cardbus : 8211.o
Version : v1.05
Where : http://www.admtek.com.tw/index/index/Download.htm
http://www.espina.info/papers/officeconnect/
Contact : ADMtek support <NIC_tech_support@admtek.com.tw>
Maintainer : -
Documentation : Readme files
http://www.houseofcraig.net/belkin_howto.php
Configuration : Wireless Extensions
Statistics : Wireless Extensions
Modes : Managed, Ad-Hoc
Security : WEP
Scanning : No
Monitor : No
Multi-devices : ?
Interoperability : 802.11-DS and 802.11-b, interoperate with Windows
Other features : PCI busmaster
Non implemented : -
Bugs : ?
License : Binary only for the core + OpenSource Linux wrapper
Vendor web page : http://www.admtek.com.tw
http://www.infineon.com/
http://www.dlink.com/products/

3.23.1 The device

ADMtek is a small taiwanese company that designed a single chip 802.11b MAC solution. Very little is known about it (for example which radio is used with the MAC), but we can expect compliance with the 802.11b specification and the usual feature set. One of the main feature of this chipset is that is uses a PCI busmaster interface (as opposed to the Intersil PrismII that uses ISA PIO - section 3.6), which result in much lower CPU utilisation (and potentially higher performance).

Most Cardbus 802.11b cards are based on this chipset. The chipset is starting to appear in products, such as some D-Link 802.11b Cardbus and PCI cards, Belkin PCI cards, the SMC 2602W V2 and the 3Com 3CRSHPW796.

ADMtek was bought by Infineon in 2004. Since then, their web site disappeared, and the Infineon web site has no information on their wireless LAN products. They seem to have shifted their focus towards `system on a chip' and don't seem to make standalone 802.11 modules anymore.

3.23.2 The driver

ADMtek has released a Linux driver based on a binary library, that can be compile for different distributions. The driver has complete support for Wireless Extensions, and many people have reported success using it.

Eduardo made a patch to add support for the 3Com 3CRSHPW796 to this driver.

3.24 ADMtek ADM8211 full source driver

Driver status : pre-release
Driver name : PCI & Cardbus : adm8211.o
Version : 20060111
Where : http://aluminum.sourmilk.net/adm8211/
Maintainers : Michael Wu <flamingice@sourmilk.net>
Jouni Malinen <jkmaline@cc.hut.fi>
Documentation : -
Configuration : Wireless Extensions
Statistics : Wireless Extensions
Modes : Managed, Ad-Hoc
Security : WEP
Scanning : Wireless Extensions
Monitor : Yes
Multi-devices : ?
Interoperability : 802.11-DS and 802.11-b, interoperate with Windows
Other features : PCI busmaster
Non implemented : -
Bugs : ?
License : GPL
Vendor web page : http://www.admtek.com.tw
http://www.dlink.com/products/

3.24.1 The device

This is the same device as the previous entry (section 3.23).

3.24.2 The driver

Michael took a driver originally started by Jouni (of HostAp fame - section 3.8), completed it, debugged it and finally released it. The main difference with ADMtek driver is that this driver is fully OpenSource and support only kernel 2.6.X.

The driver is still young, but its gaining feature and stability with each release, and is well written. Recently it has gained support for monitor and Ad-Hoc mode, and many bugfixes and cleanups. You should contact Michael if you want to help.

The initial version of the driver uses standalone 802.11 code. Michael is porting the driver to the new mac80211 kernel stack (see section 4.9). This alternate version is only available in the wireless-dev GIT repository, and should appear in a Linux kernel in the future.

3.25 Realtek RTL8180L cards

Driver status : ?
Driver name : PCI : rtl8180_24x.o
Version : v1.5
Where : http://www.realtek.com.tw/downloads/
Maintainer : ShuChen <shuchen@realtek.com.tw>
Documentation : Readme files
http://www.alumni.caltech.edu/~rbell/Realtek8180.html
http://www.linuxquestions.org/questions/showthread.php?s=&threadid=61832&perpage=15&pagenumber=1
Configuration : Private Extensions
Statistics : ?
Modes : Managed, Ad-Hoc, Master
Security : WEP
Scanning : No
Monitor : No
Multi-devices : ?
Interoperability : 802.11-DS and 802.11-b, interoperate with Windows
Other features : -
Non implemented : -
Bugs : ?
License : Binary only driver + OpenSource Linux wrapper
Vendor web page : http://www.realtek.com.tw/

3.25.1 The device

Realtek is a taiwanese company known for its Ethernet cards, which has recently released a 802.11 chipset. This chip seems to have all the usual 802.11 features, and offer only a PCI/CardBus interface (for lower CPU utilisation).

3.25.2 The driver

Realtek has released a binary driver for their device, with precompiled version for Red-Hat and SuSE. The driver doesn't use Wireless Extension (but some private extensions), and has a strange setup procedure (manual enable, require proper commands in the proper sequence).

I didn't try this driver, but I got some feedback from many users. The driver version before 1.2 were difficult to install and prone to crash the kernel. The version 1.2 had many troubles (such as reassociation), but was working. Version 1.3 is more stable, but a little too talkative.

Version 1.4 of the driver also adds support for making the card an Access Point. Version 1.5 supports newer version of gcc and newer kernels.

3.26 Realtek RTL8180L full source driver

Driver status : Beta
Driver name : r8180.o
Version : 0.22
Where : http://rtl-wifi.sourceforge.net/
http://rtl8180-sa2400.sourceforge.net/
Maintainers : Andrea Merello <andreamrl *at* tiscali.it>
Hauke Mehrtens <hauke@hauke-m.de>
Discussion forums : https://sourceforge.net/forum/?group_id=186406
Documentation : Readme files
Configuration : Wireless Extensions
Statistics : ?
Modes : Managed, Ad-Hoc
Security : WEP
Scanning : Wireless Extensions
Monitor : Yes
Multi-devices : ?
Interoperability : 802.11-DS and 802.11-b, interoperate with Windows
Other features : Philips and Maxim radio support
Non implemented : SMP, non-i386
Bugs : -
License : GPL
Vendor web page : http://www.realtek.com.tw/

3.26.1 The device

This is the same device as the previous entry (section 3.25).

3.26.2 The driver

The Realtek driver is not the most user friendly, and many people can't manage to make it work on their configuration. This lead Andrea to write his own driver for the Realtek chipset. After much hard work by Andrea, his driver is now functional, and evolving quickly.

This driver is fully OpenSource and the source is much closer to the standard of other Linux drivers. It support PCI and Pcmcia card with the Philips radio (the most common), and has experimental support for the Maxim radio. It reuses the WEP implementation of the Centrino driver (section 3.28), which is well tested and featured. It supports the latest kernel 2.6.X and 2.4.X, has complete support for Wireless Extensions, and support monitor mode, so you can see how much Andrea has been busy lately...

During early 2005, Andrea decided to reorganise the driver, and created a new branch of the driver called rtl818x-newstack. This branch is based on the Intel ieee80211 stack from the Centrino driver (see section 3.28). The goal of this branch is better integration in the kernel, and also support for the newer Realtek 802.11g cards (see section 4.16). It seems that Realtek is also taking a more active role in supporting Andrea and this driver.

Mid 2005, Andrea stopped updating his project, leaving his work on the new branch unfinished. Beginning 2007, a group of users lead by Hauke restarted working on the driver, with a new project page and new repository. Their main work so far has been updating the driver to work with the latest kernel.

3.27 Ralink RT2400 cards (Minitar driver)

Driver status : Stable
Driver name : stable : rt2400.o
alpha : rt2x00.o
Version : 1.2.2 (stable) and 2.0.4 (pre-alpha)
Where : http://rt2x00.serialmonkey.com/
http://rt2400.sourceforge.net/
http://minitar.com/index.php?maincat=download
http://flavio.stanchina.net/debian/rt2400.html
Maintainers : Paul Lin
Mark Wallis <markwallis at users.sourceforge.net>
Flavio Stanchina <flavio_AT_stanchina.net>
Ivo van Doorn <ivd at euronet.nl>
Mailing list : http://sourceforge.net/mail/?group_id=107832
Documentation : Text files, Howtos
Configuration : Wireless Extensions and specific graphical tool
Statistics : Wireless Extensions
Modes : Managed, Ad-Hoc
Security : WEP
Scanning : Yes (specific tool)
Monitor : Yes
Multi-devices : ?
Interoperability : 802.11-DS and 802.11-b, interoperate with Windows
Other features : Promisc/bridge mode support
Non implemented : -
Bugs : SMP problems
License : GPL
Vendor web page : http://www.ralinktech.com/
http://minitar.com/
http://rt2x00.serialmonkey.com/wiki/index.php/Hardware

3.27.1 The device

Ralink is yet another taiwanese company having recently released a 802.11b chipset. This chip seems to have all the usual 802.11b features, and offer only a PCI/CardBus interface (for lower CPU utilisation).

3.27.2 The driver

Ralink created the original Linux driver for this card, and Minitar released it as fully OpenSource and started helping driver users on their forums. This driver support the Wireless Extensions, and also comes with a dedicated graphical utility. Flavio created a Debian package for this driver, and documented how to install and use this driver.

Then, Mark created a SourceForge project for the driver and started to maintain it, helped by many users of the driver. Many patches have been integrated to improve the stability and functionality of the driver.

Ivo has started a rewrite of the driver, called rt2x00, his goal is to have a source code easier to integrate in the Linux kernel and to maintain. His rewrite targets both the RT2400 and the new RT2500 (section 4.11). The initial version of this new driver was using the the Intel ieee80211 stack from the Centrino driver (see section 3.28).

Then, Ivo ported the rt2x00 driver to the new mac80211 stack (see section 4.9), and lots of development has happened on that version of the driver. This alternate version is available in the wireless-dev GIT repository and in the CVS, and should appear in a Linux kernel in the future.

3.28 Intel PRO/Wireless 2100 802.11b (Centrino)

Driver status : Beta
Driver name : ipw2100.o
Version : 1.2.2
Where : Linux kernel (2.6.19)
http://ipw2100.sourceforge.net/
http://ieee80211.sourceforge.net/
Maintainer : James P. Ketrenos <ipw2100-admin@linux.intel.com>
Mailing list : http://lists.sourceforge.net/lists/listinfo/ipw2100-devel/
Documentation : Readme
Configuration : Wireless Extensions
Statistics : /proc interface and Wireless Extensions
Modes : Managed, Ad-Hoc
Security : WEP, 802.1x, WPA
Scanning : Wireless Extensions
Monitor : Yes
Multi-devices : ?
Interoperability : 802.11-DS and 802.11-b, interoperate with Windows
Other features : Firmware loading via HotPlug
Non implemented : -
Bugs : ?
License : GPL
Vendor web page : http://www.intel.com/

3.28.1 The device

The Intel PRO/Wireless 2100 is the second generation wireless LAN product from Intel. Intel initially sold various wireless LAN cards and Access Points from Symbol as Intel PRO/Wireless 2011 (section 3.10). However, Intel has a long experience with Ethernet MAC controllers, so it was natural for them to create their own wireless LAN chips. The first MAC controller created by Intel is the PRO/Wireless 2100, and we can expect many more products to come.

The PRO/Wireless 2100 MAC controller is fully IEEE 802.11b compliant and has all the usual 802.11b features. It's a PCI Busmaster design, for low CPU utilisation. The Radio most likely is done in collaboration with Symbol (Intel and Symbol have one of those strategical alliances).

The main difference between this chipset and the vast number of other 802.11b chipset is Intel's marketing. The PRO/Wireless 2100 is not sold as a standalone product, but only as part of the Centrino package. Centrino is just a marketing exercise, only laptops equipped with a Intel processor, an Intel chipset and a Intel PRO/Wireless card can carry the Centrino logo. The PRO/Wireless 2100 is a regular MiniPCI card (it's not integrated on the motherboard as some rumors suggests), and you can replace the PRO/Wireless 2100 of Centrino laptops by any other MiniPCI wireless LAN of your choice.

Intel has been quite successful, and a large number of recent laptops includes a PRO/Wireless 2100 MiniPCI card. In fact, if you buy a laptop with integrated 802.11b support (without 802.11g or 802.11a support), it most likely has a PRO/Wireless 2100 card. On the other hand, the PRO/Wireless 2100 is not available as a separate Pcmcia, Cardbus, PCI or USB card.

3.28.2 The driver

The Linux driver for the PRO/Wireless 2100 was released a long time after the card themselves. For this reason, Intel did receive a lot of harsh criticism from people buying laptops with this card and finding that there was no driver or documentation for it. This was a bit unfair, as Intel has always been supportive of Linux, for example most drivers for Intel Ethernet chipset are directly maintained by Intel, and producing good driver takes time. Eventually, Intel released a fully Open Source driver, which they support directly.

By the time James released the driver, it was already functional, but limited. Since them, many people have contributed fixes and enhancements, and development is happening quickly. Wireless Scanning was added. WEP support was added by borrowing code from HostAP. The driver require firmware loading, and the firmware loading procedure was converted to use the standard HotPlug firmware loading support. Support is also being added for the wireless on/off button of many specific laptops.

The Linux driver require a specific firmware which Intel says is identical to the Windows firmware but packaged differently. This firmware mostly make sure that Linux users don't do things breaking various radio regulations. Intel must be applauded for taking the effort of releasing this specific Linux firmware (and their updates), this is what enables the driver to be fully OpenSource and forced other driver to be binary, such as the Atheros driver (section 4.2).

James and various other contributors have been very hard at work on the driver and many bugs have been fixed. After that, most of the work has been in the area of ad-hoc and monitor mode, WPA support and power management.

Around summer 2005, James decided to spin-off the code he had borrowed from the HostAP driver in a separate Intel ieee80211 stack, shared by all Intel drivers (see section 4.6 and section 4.8). The Intel ieee80211 stack was included in kernel 2.6.14, alongside this driver, and has seen continuous improvements after this. This stack only handles 802.11 framing and 802.11 encryption, but not the SoftMAC function (802.11 management), as those drivers don't require it. A separate SoftMAC layer was created for this stack (see section 4.13), but none of the Intel driver uses it.

3.29 ZyDAS ZD1201 driver (USB dongles)

Driver status : Stable
Driver name : zd1201.o
Version : 0.15
Where : Kernel 2.6.12
http://linux-lc100020.sourceforge.net/
Maintainer : Jeroen Vreeken <pe1rxq@amsat.org>
Forums : http://sourceforge.net/forum/?group_id=94356
Documentation : Web page
Configuration : Wireless Extensions
Statistics : Wireless Extensions
Modes : Managed, Ad-Hoc
Security : WEP
Scanning : Wireless Extensions
Monitor : Yes
Multi-devices : ?
Interoperability : 802.11-DS and 802.11-b, interoperate with Windows
Other features : -
Non implemented : -
Bugs : -
License : GPL
Vendor web page : http://www.zydas.com.tw/
http://www.sweex.com/

3.29.1 The device

ZyDAS is yet another taiwanese company having recently released a 802.11b chipset. This chip seems to have all the usual 802.11b features, and offer a PCI. Pcmcia and USB interface. For some reasons, it seems to have only been used in various USB dongles.

3.29.2 The driver

Originally Sweex distributed a Linux driver for their ZyDAS based USB dongles, but suddenly they retired their Linux drivers from their support site. This driver was based on the linux-wlan-ng driver (see section 3.6). The driver was then improved by the Linux users.

Jeroen rewrote the driver to get rid of its dependency on linux-wlan-ng, and created a much smaller and simpler driver. This driver was further improved and included in kernel 2.6.12. Despite its very small size, the driver support a large number of features, such as Wireless Extensions, Scanning and Monitor mode.

3.30 SiS 160/162

Driver status : Beta
Driver name : PCI: sis160.o, sis162.o
USB: sis162u.o
Version : R093.02.24
Where : http://driver.sis.com/
http://driver.sis.com/linux/wlan/wlan_162_linux.tgz
Maintainer : ?
Mailing list : ?
Documentation : Readme file
Configuration : Specific tool, Wireless Extensions
Statistics : -
Modes : Managed, Ad-Hoc
Security : ?
Scanning : Specific tool
Monitor : No
Multi-devices : ?
Interoperability : 802.11-DS and 802.11-b, interoperate with Windows
Other features : -
Non implemented : -
Bugs : -
License : Binary only for the core + OpenSource Linux wrapper
Vendor web page : http://www.sis.com/

3.30.1 The device

SiS is a taiwanese company better known for their CPU chipsets, but they do other products, and amongst them 802.11b chips. The SiS 160 was their first product, offers all the standard 802.11 features and has a PCI interface. The SiS 162 is their second product, adds WPA support and has both a PCI and a USB interface. Those chips are low cost, and are typically found in cheap USB dongles.

3.20.2 The driver

SiS released two drivers, a driver for the SiS 160 and another driver for the SiS 162. Those driver are based on a large binary part and a very small source wrapper, and are designed for kernel 2.4.X (and only on x86 platforms). They also contains their own binary configuration tool, and some basic support for Wireless Extensions.

Users reports are that these drivers can be problematic and only work for kernel 2.4.0 to 2.4.18, and do not work in any 2.6.X kernel. From a quick look at the source code, most of the functionality is in the binary part and it might not be possible to port it to more recent kernels.

next


Linux Wireless LAN Howto - jt@hpl.hp.com
Converted to html from Frame Maker - 16 september 97
Updated 25 July 07
Copyright © 1996-2007 Jean Tourrilhes
    Project hosted and sponsored by :
HP home page