Admin

Home > Linux > Kernel and Developments >

Wireless LAN resources for Linux - cosmocafe.net

Wireless LAN resources for Linux [Link] view:478

GPL driver for the Wavelan IEEE/Orinoco



Linux & Wireless LANs Linux Orinoco driver Linux Wavelan drivers Wireless Tools Papers Main page

Wavelan IEEE drivers Wavelan IEEE patches Wavelan IEEE issues


Introduction

The Linux Wavelan IEEE driver is an Open Source project that had many contributors through its turbulent life. I did contribute to it since 1999 thanks to Hewlett Packard sponsoring my work. My main contribution was the Wireless Extensions support (of course), multi-firmware support and a few bug fixes.

The Wavelan IEEE is the current generation of Wireless LAN hardware offered by Lucent (and others). A more detailed description is available in the Wireless Howto. This page describe the state of the old Linux GPL driver for this hardware. This driver is now discontinued.

I've put up a page for the new Linux MPL/GPL driver, called orinoco_cs.

For the good old Wavelan, which was not IEEE compliant (a few generations back), go here. For other wireless LANs, please read the Linux Wireless Howto.

It's all explained here.

Here are a few more patches for the driver :
  • LinkSys AP decapsulation patch : Workaround for the latest wvlan_cs to properly decapsulate frame sent by LinkSys Access Points. Henry Goffin did backport my orinoco_cs fix (itself based on the patch from Dong Liu).

Too many for my taste ;-(
  • Maintainance : David is maintaining the orinoco_cs driver. wvlan_cs is no longer maintained. Please think about upgrading...
  • Firmware revisions : The latest driver should work across all firmware revisions, it has been tested with 1.16, 4.08, 4.52, 6.04, 6.06 and 6.16. However, some feature might not work well in all firmwares (promiscuous in 6.X) or are even not available at all (fragmentation for 6.X, Microwave Oven for 4.X). Ad-Hoc mode is also different in firmware 4.X and 6.X (see below).
  • Firmware update : available on Lucent web site, not available for Linux. Note that most firmware updater require a specific version of the Windows driver to work.
  • Driver versions : Most up to date is in Pcmcia package 3.1.25 (version 1.0.7).
  • Kernel 2.4.X : Works fine. Disable all Pcmcia support from the kernel, recompile the kernel, recompile the Pcmcia package, and then configure normally.
  • PCI adapter : may be the cause of configuration troubles, and does not work on most older PCs. Not really wvlan_cs related.
  • Multi-setup (profiles) : use the Pcmcia scheme mechanism (see Pcmcia Howto) with network.opts and wireless.opts. Better than in Windows, because both IP config and Wavelan config are changed synchronously.
  • Multi-card : The driver supports it (2 cards in a box) and it has been tested successfully. Radio link quality will be impacted.
  • SMP : The driver is fully SMP safe and has been successfully tested on a SMP box, including Wireless Extensions.
  • Configuration : The prefered way to configure the wvlan_cs driver is through the wireless.opts pcmcia config file (in /etc/pcmcia), which uses iwconfig. Modules parameters (in config.opts) are provided only for backward compatibility. Settings in wireless.opts always override module parameters, so if you want to use a specific module parameters, don't specify the equivalent option in wireless.opts.
  • Ad-hoc modes : firmware 4.X only supports Lucent proprietary Ad-hoc demo mode, whereas firmware 6.X adds supports for 802.11 compliant IBSS Ad-Hoc mode. Those two Ad-Hoc mode are totally incompatible and do not interoperate between each other. It works like this in the latest driver :
    • MODE="Ad-Hoc" (in wireless.opts) : set the proper Ad-Hoc mode depending on firmware revision : up to 6.04, use old Ad-Hoc, after 6.06, use IBSS Ad-Hoc (same as Windows driver).
    • iwconfig ethX mode Ad-Hoc : same as above.
    • port_mode=3 (in config.opts) : Set old Ad-Hoc demo mode.
    • allow_ibss=1 (in config.opts) : Set 802.11 compliant IBSS Ad-Hoc mode if available.
  • Debugging Ad-Hoc mode : the field "Access Point" or "Cell" shown by iwconfig is usefull to know what's happening. If it's all zeros, you are using Ad-Hoc demo mode. In IBSS Ad-Hoc mode it indicates the cell the node has joined. It should be the MAC address of the first node started and all node should have the same value (apart if they are out of range).
  • Encryption keys : Encryption setting is fully functional and available in wireless.opts. Note that the driver doesn't complain if you set a 128 bits key on a 40 bits only card (Silver), which won't work...
  • Fragmentation setting : firmware 6.X and later removed direct fragmentation threshold setting in favor of microwave oven robustness (automatic fragmentation). For those firmware, the fragmentation setting in the driver enable or disable MWO robustness.
  • Signal strength in ad-hoc mode : set a MAC address in the spy list using iwspy, first address in the list will appear in /proc/net/wireless as well as with iwspy.
  • Promiscuous mode : does work with firmware 4.X and open network (no encryption). Doesn't seem to work with encryption enabled. May lock-up the card with firmware 6.X. More investigation needed.
  • Driver switching : If you want to switch between the 2 Wavelan-IEEE drivers, everything is controlled in /etc/pcmcia. wvlan_cs is bound in config, wavelan2_cs is bound in wavelan2_cs.conf. Comment those files as needed.
  • Ethernet Bridging : doesn't work due to 802.11 protocol restriction. You may want to try IP bridging (with ARP proxy) or routing.
  • Tx Timeout : various things can produce Tx Timeout. It depend on when the happen and how frequent they are :
    • As soon as the card is inserted : interrupts are not delivered to the driver (not a driver problem, more a Pcmcia problem). If you have a PCI adapter, try to play with "PCIC_OPTS" setting. Also try to exclude the irq currently used in config.opts..
    • Under load, many of them : a potential driver problem. Cause unknown, various conflicting report. Some people have claimed that upgrading the firware to 6.16 solve this problem.
    • Under heavy load or interferences, few of them : this is normal. You may want to tune to watchdog timer in the driver to get optimal performance.

Wireless LANs and Wireless Tools - jt@hpl.hp.com
Updated 3 April 01
Copyright © 1996-2004 Jean Tourrilhes
    Project hosted and sponsored by :
HP home page


GCC (GNU Compiler Collection)
Linux Kernel (kernel.org)
Redhat Linux
FEDORA Liniux
rpmfind.net
Tucows Linux
Freshmeat.net
zd1211 driver for Linux kernel 2.4 and 2.6
Ralink linux driver for Linux kernel 2.4 and 2.6
zd1211 reconition log in dmesg
dmesg of server personal server
HowTo Upgrade To The 2.6 Kernel from 2.4
Linux WPA/WPA2/IEEE 802.1X Supplicant
Wireless LANs under Linux.
Buffalo wireless driver for Linux
hdparm man page
ubuntu Linux
ubuntu linux 6.10 (edgy) ¿¡¼­ skype ÇѱÛÀÔ·Â
UTF-8±â¹ÝÀÎ ubuntu¿¡¼­ Samba ÇÑ±Û ÆÄÀÏÀ̸§ º¸Á¸Çϱâ
³ªºñ (X¿ë ÇѱÛÀԷ±â for Linux)
hanterm-xf for debian
Gentoo Linux
ubuntu Edgy ¿¡¼­ root ±ÇÇÑÀ¸·Î ÇÁ·Î±×·¥ ½ÇÇàÇϱâ (Gnome base)
Lightweight Linux server (console only) is debian
wineXS
Enable/disable services in Ubuntu linux
Linux¿¡¼­ localtime ½Ã°£´ë(timezone) º¯°æ
HOWTO Net Boot Ubuntu from SystemImager

Back | Reload | Home | Forward

Created by Jae-Yeol Hwang

Last modified : 12:03 pm, 23 Mar 2007