Hidey ho all.
After bleating about my wireless lan woes a week or so ago on the list,
I'm pleased to say that thanks to the help of the list, I have a well
functioning wireless lan rig.
In case someone else in my positition is reduced to searching list
archives, I'll outline how things went.
I've got a D-Link DWL-650 11Mbps 802.11b pcmcia wireless lan card an ipaq
3660 running linux (Familiar 0.4), talking to my gateway (Debian 2.2) with
an Aironet 4800 pcmcia-in-a-pci-card rig.
Firstly, to clarify some issues around the DWL-650; it is a stock prism2
chipset 16 bit pcmcia card, of a fairly standard variety. It's not a
wavelan, or cardbus.
In stock linux, it doesn't appear to work with the (obsolescent)
wvlan_cs driver, but apparently does with the orinoco/hermes driver (the
replacement for the wvlan_cs). However the orinoco/hermes drivers don't
work on Linux/ARM, due (apparently) to aligned-ness issues.
My goal was to have working 802.11b in ad-hoc/IBSS mode to the various
wlan clouds in my commuting-life. The only working solution appeard to be
the Linux WLAN Project's[1] wlan-ng.
The wlan/wlan-ng projects are an implementation of the 802.11b standards
for Prism2 based cards. The wlan-ng drivers are the newer 11Mbps ones,
whilst the older wlan ones are more mature, but only support 2Mbps. (As as
interesting aside, the wlan/wlan-ng drivers support all manner of neat
stuff, such as 'access point' functionality, promiscuity, and other neat
tricks.)
The wlan-ng drivers as yet have only unofficial patches for ad-hoc
support, which I obtained from the wlan-ng mailing lists. (The turnover in
patches is high, so check the mailing list to see where support is at -
it may well be in the stock release now...)
I'm runing linux-wlan-ng-0.1.8-pre13 with patches.
I set out with familiar 0.4, using the stock 2.4.3-rmk2-np1 kernel. I set
up the cross-compiler toolchain, (built a few things to test), and then
configured a 2.4.3-rmk2-np1 kernel source tree and pcmcia-cs-3.1.29 tree
to build wlan-ng against.
The trick to getting wlan-ng to build and work on the ipaq, appears to be
some mangling of the pcmcia voltage detection stuff. I read elsewhere on
the mailing lists[2] that this is due to the Ipaq doing some
auto-voltage-fu, and thusly confusing things that try to set it manually.
Whilst not solving the problem, by mangling the code path[3] so it doesn't
head off the wrong way, you can get a working build.
Next, I discovered that the DLink shipped firmware lacked adequate ad-hoc
mode support (apparently the windows drivers do some serious kludging to
make it go), and also discovered that the version available from the dlink
site was also inadquate. In a leap of faith, I 'upgraded' the card with a
smc firmware[4] of the appropriate version, using the windows utility[5].
From there, it was a simple case of configuring /etc/pcmcia/wlan-ng.opts
to set SSIDs and the like, insert the card, and bob's your uncle.
There's still a few error messages here and there, but nothing that
impairs functionality. Now I'm happily listening to streaming mp3,
browsing, and battling pine with a stylus :)
Adam
[1] http://www.linux-wlan.org
[2] http://www.handhelds.org/pipermail/ipaq/2001-May/006717.html
[3] linux-wlan-ng-0.1.8-pre13/src/prism2/driver/prism2sta.c, line 2936 and
friends
[4] http://www.smc.com/drivers_downloads/library/S10008C3.zip
[5] http://www.smc.com/drivers_downloads/library/WinUpdate_OEM_1.1.zip
Received on Tue Oct 2 03:22:49 2001
This archive was generated by hypermail 2.1.8 : Tue May 04 2004 - 09:42:26 EDT