[OLPC-devel] Notes on Marvell libertas driver
dcbw at redhat.com
Sat Jun 24 00:11:54 EDT 2006
Some notes after pounding it for a night:
1) It doesn't do auto rate by default, and I couldn't get it to work
with the iwpriv toggle for auto rate either. The driver should
dynamically adjust the rates as necessary when the signal strength is
within certain boundaries, like all other cards do. (ie, the worse the
SNR, the lower the bitrate the driver should set; the better the SNR,
the higher the bitrate the driver should set)
2) I don't know why SIOCSIWENCODE wasn't hooked up, but it appears to
work. However, there are some bugs with it; you cannot set the key and
the essid at the same time as all other drivers support.
iwconfig eth2 key <wep key> open
iwconfig eth2 key on
iwconfig eth2 essid foobar
iwconfig eth2 essid foobar key <wep key> open
This is a driver bug in the SIOCSIWENCODE handler and we just need to
normalize that handler with other drivers.
3) The driver doesn't reassociate by default when it drops the
connection to the AP, due to lack of signal or whatever. I tried the
REASSOCIATION-bounded code, but results were inconclusive. However, as
provided in the git tree, it will not automatically reassociate like all
other drivers do.
4) WPA support seems to be present, but is not correctly handled. WPA
doesn't get handled by SIOCSIWENCODE, it gets handled by
SIOCSIWENCODEEXT in correct drivers. We need to move the
wlan_set_encode_wpa() function into a handler for ENCODEEXT and move the
wlan_set_encode_nonwpa() handler function into ENCODE, and hook up all
the options and flags. We also need an AUTH handler for complete
standards-compliant WPA support.
5) Scans don't provide signal quality, though it does provide level and
noise. This is 20 minute fix.
6) Scans don't provide the WPA and/or RSN Information Elements to
userspace via the GENIE event, but rather with custom events. Convert
to GENIE, another 20 - 30 minute fix.
More information about the Devel