libertas_sdio on at91sam9263
Hans-Jürgen Koch
hjk at linutronix.de
Tue Dec 18 08:13:46 EST 2007
Am Tue, 18 Dec 2007 11:39:00 +0100
schrieb Marc Pignat <marc.pignat at hevs.ch>:
> Hi!
>
> On Tuesday 18 December 2007, Hans-Jürgen Koch wrote:
> > I have a board very similar to the AT91SAM9263-EK evaluation kit.
> > There's a 8686 soldered on the board, connected to MMC1, slot A.
> > ATM, I'm using netdev-2.6.25, but I get similar effects with other
> > recent kernels.
>
> The current version of the at91_mci driver doesn't handle data
> transfer when size%4 != 0.
> The size of all data xfer should be rounded up to a multiple of 4
> bytes.
Hmm, yes, but looking at at91_mci.c, I guess it should show an
"Unsupported block size" error message and then fail. Can't remember I
ever saw that.
>
> Please note that the at91_mci driver can be fixed for at91sam series,
> but not for at91rm9200... I think the better way is to always round
> data transfer size, this will introduce a very small overhead, but
> the libertas_sdio driver will work with more sd hosts.
Agreed, but where would you do that? Loading the firmware doesn't seem
to be handled by libertas_sdio itself, it just calls request_firmware().
>
> ...
> > Any ideas what I could try next to debug this?
> try enabling debug in the libertas driver and disable it in the
> mmc/sd stack. I think there is a timing problem when downloading the
> firmware, if there is a lot of printk, the firmware upload will
> fail...
Thanks for that hint!
Regards
Hans
More information about the libertas-dev
mailing list