GSPI Support
Dan Williams
dcbw at redhat.com
Wed Oct 8 17:06:55 EDT 2008
On Fri, 2008-10-03 at 14:50 -0400, Angel Roman wrote:
> Hi Everyone,
>
> I successfully ported the marvell bulverde gspi driver to the mx31
> processor using the linux spi implementation and using a GPIO as the
> chip select - the MX31 has some issues with keeping the chip select
> signal active for longer than 8 spi word transfers.
>
> Unfortunately, this work cannot be open sourced due the licensing
> agreements. However, after searching the web, looking at the libertas
> source code and the documentation from the module vendor, I was able to
> gather all the information to implement a GSPI extension to the libertas
> driver.
>
> Currently, I have TX/RX data going to and from the chip as well as CMDs
> under linux 2.6.24.4 and I am able to establish an association with a
> local access points. Unfortunately, I had to uncomment the DATA_RATE
> command since non of the firmware versions available from marvell (gspi
> 8.70.8, 9.45.3, and 0.70.3) support it.
Sorry for the lag... but
Awesome! Note that latest libertas drivers in 2.6.26 and 2.6.27 don't
issue data rate for newer firmware (I think).
> The current status of my driver is:
> - ability to read write to all registers in the GSPI module
> - ability to send and receive data
> - ability to send commands and receive command responses.
> - ability to scan for local access points and associate with them (at
> least the associate command is successful and it the SSID shows up in
> the iwconfig information).
Excellent.
> Unfortunately, I am unable to receive a DHCPOFFER from my wireless
> router At this point, I plan to get 2.6.26.5 running on my board to test
> and work with a later version of libertas. In the meantime, does anyone
> have any suggested workarounds for firmware that does not support the
> DATA_RATE command? Is this still a requirement of the latest libertas
> driver? I assume we can do something via the RATE_ADAPT_RATESET command.
> Any thoughts?
Latest code already uses ADAPT_RATESET and if that returns an error,
falls back to DATA_RATE. That should be sufficient, though we should
really protect the DATA_RATE with a firmware version check.
If you could pull down the latest code from 2.6.27 (shouldn't be hard to
backport, I can certainly help with issues you might have doing that)
and check the results, I'd be quite interested to hear about them.
Thanks!
Dan
More information about the libertas-dev
mailing list