Skip to contentSkip to conversation

MXC MMC and Libertas_sdio

DISCUSSION Andreas Feuersinger 2 participants 3 messages Jul 23, 2010 – Jul 26, 2010 MMC, SD and SDIO

lore
Share & tools
lore
#0 lore raw

Hi,

I'm trying to use the libertas driver on MX27 based hardware. I'm using kernel v2.6.22 with libertas and sdio driver ported (mainly 2.6.34). The Wlan device is Marvel SD8686 connected via sdio.

Loading of firmware seems to work using a block size of 512
sdio_set_block_size(card->func, 512);

after loading the firmware I get the following output:

libertas: waiting for firmware to boot
libertas: sdio read scratch
libertas: sdio scratch 0 ; ret: 0
libertas: sdio read scratch
libertas: sdio scratch 0 ; ret: 0
libertas: sdio read scratch
libertas: sdio scratch 0 ; ret: 0
libertas: sdio read scratch
libertas: sdio scratch 220 ; ret: 0
libertas: sdio host to card type 1, bytes 46
libertas: sdio host to card worker
libertas: sdio read scratch
libertas: sdio scratch 50 ; ret: 0
libertas: sdio card to host size 50
libertas: sdio card to host status: 10
libertas: card->buffer[0] 0 card->buffer[1] 0 packet of type 1 and size 0 bytes
libertas: sdio handle cmd
libertas: response packet too large (4294967292 bytes)
libertas: problem fetching packet from firmware

The latest output goes on forever. Canceling the modprobe command results in a Network Interface:

Strg+C
libertas: eth1: Marvell WLAN 802.11 adapter

However the problem fetching packet from firmware remains and the device does not work.
I tried several Firmware Versions all resulting as described above.

If I use 32 instead of 512 for the block size the kernel hangs after loading helper firmware during the loading process of the "real" firmware.

I read about Daniel Mack doing similar stuff for mx31 based systems. Did he/you has/have success in that and what were your problems?

I appreciate any help/hints where to dig for the error.

Thanks,
Andreas

#1 lore raw

On Fri, 23 Jul 2010 13:59:38 +0200, Andreas Feuersinger <[email protected]> wrote:

Cc'ing [email protected]

Quoted 65 lines

Hi,

I'm trying to use the libertas driver on MX27 based hardware. I'm using kernel v2.6.22 with libertas and sdio driver ported (mainly 2.6.34). The Wlan device is Marvel SD8686 connected via sdio.

Loading of firmware seems to work using a block size of 512
sdio_set_block_size(card->func, 512);

after loading the firmware I get the following output:

libertas: waiting for firmware to boot
libertas: sdio read scratch
libertas: sdio scratch 0 ; ret: 0
libertas: sdio read scratch
libertas: sdio scratch 0 ; ret: 0
libertas: sdio read scratch
libertas: sdio scratch 0 ; ret: 0
libertas: sdio read scratch
libertas: sdio scratch 220 ; ret: 0
libertas: sdio host to card type 1, bytes 46
libertas: sdio host to card worker
libertas: sdio read scratch
libertas: sdio scratch 50 ; ret: 0
libertas: sdio card to host size 50
libertas: sdio card to host status: 10
libertas: card->buffer[0] 0 card->buffer[1] 0 packet of type 1 and size 0 bytes
libertas: sdio handle cmd
libertas: response packet too large (4294967292 bytes)
libertas: problem fetching packet from firmware

The latest output goes on forever. Canceling the modprobe command results in a Network Interface:

Strg+C
libertas: eth1: Marvell WLAN 802.11 adapter

However the problem fetching packet from firmware remains and the device does not work.
I tried several Firmware Versions all resulting as described above.

If I use 32 instead of 512 for the block size the kernel hangs after loading helper firmware during the loading process of the "real" firmware.

I read about Daniel Mack doing similar stuff for mx31 based systems. Did he/you has/have success in that and what were your problems?

I appreciate any help/hints where to dig for the error.

Thanks,
Andreas

--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html

#2 lore raw

Hi,

I just managed to get the libertas card to work. Unfortunately the data-rate is not too good (30 - 50K/s)

To get it work I changed block sizes to be multiples of 4.

Could somebody please point out a good place to increase buffer sizes to multiples of 4 without influencing the performance/error rate of the driver?
Are there other possibilities to increase data-rate for my configuration?

thank you!

Andreas

Quoted 14 lines · On Fri, 23 Jul 2010 22:30:53 +0100 Matt Fleming <[email protected]> wrote:

On Fri, 23 Jul 2010 13:59:38 +0200, Andreas Feuersinger <[email protected]> wrote:

Cc'ing [email protected]

Quoted 10 lines

I'm trying to use the libertas driver on MX27 based hardware. I'm using kernel v2.6.22 with libertas and sdio driver ported (mainly 2.6.34). The Wlan device is Marvel SD8686 connected via sdio.

Loading of firmware seems to work using a block size of 512
sdio_set_block_size(card->func, 512);

after loading the firmware I get the following output:

[ ... ]

Quoted 25 lines
Quoted 25 lines

libertas: response packet too large (4294967292 bytes)
libertas: problem fetching packet from firmware

The latest output goes on forever. Canceling the modprobe command results in a Network Interface:

Strg+C
libertas: eth1: Marvell WLAN 802.11 adapter

However the problem fetching packet from firmware remains and the device does not work.
I tried several Firmware Versions all resulting as described above.

If I use 32 instead of 512 for the block size the kernel hangs after loading helper firmware during the loading process of the "real" firmware.

I read about Daniel Mack doing similar stuff for mx31 based systems. Did he/you has/have success in that and what were your problems?

I appreciate any help/hints where to dig for the error.

Thanks,
Andreas