problem with libertas driver, Marvell W8686, and PXA270 on 2.6.27-rc7
Jeff Sutherland
jeffs at fomsystems.com
Thu Oct 2 10:17:30 EDT 2008
I'm seeking some insight into the structure of the command flow when
communicating with a Murata wifi module using the W8686 chip connected via
SDIO on a PXA270-based system. On about 2 out of 3 boot ups, and
occasionally when configuring the network interface by hand after the system
is up and running, the kernel will oops from the BUG() instruction at line
147 of drivers/net/wireless/libertas/if_sdio.c. When this happens, the value
of priv->resp_len[resp_idx] is always sitting at 142. It's almost as if the
command processing in drivers/net/wireless/libertas/main.c is missing a
command somehow. Curiously, this only seems to happen when the interface is
configured to use WEP or WPA security. I haven't seen the problem occur when
trying to configure an interface associated with an open A/P. Also I note
from my a/p's web page that the module does in fact associate fine every
time, as key loading and other configuration occurs early on, and the a/p is
currently using WEP plus mac filtering. It's just things go belly up when
the startup scripts try to bring up the interface. This happens regardless
of the firmware version used. I've tried v7, v8, and v9 firmware with
several different kernels from 2.6.25 through to the latest dev stuff from
John Linville's wireless-testing git repo.
There are some issues with the pxa mmc controller hardware as we are painfully
aware of, but note that once the interface is successfully configured the
network stays up solidly, there don't appear to be any problems once it is
configured. From looking at the code, I suspect a race condition somewhere
in the SDIO layer that's causing things to get out of sequence when it comes
time to configure the network interface. A printk placed in certain places
causes the driver to fail 100% of the time at that same point in the code
with the same value of response length, so something must be on the hairy
edge someplace when it does work.
Regards,
-Jeff
--
FOM Systems Inc. www.fomsystems.com
More information about the libertas-dev
mailing list