Questions on libertas driver

Cyril HAENEL chaenel at free.fr
Sat Jan 26 09:00:40 EST 2008


Hi Holger,

I can't be able to update my git version, I work on an old Mandriva 
distribution and the new git require to much dependencies.
So I get all the libertas directory files one by one from the git web 
interface

Now I think I have the very last version of libertas driver. I can 
easily backport it on my uclinux kernel, it just consists to add 
DECLARE_MAC_BUF and print_mac, and comment a structure field initialization.
But before, with the last version I tested, the driver was working a 
little (timeouts during Tx), but now nothing works !!

After I loaded the libertas modules and loaded the firmwares, after some 
seconds I have this message :

libertas: Command 3 timed out
libertas: requeueing command 3 due to timeout

What can I do to try to find where the problem come from ?

Regards,
Cyril


Holger Schurig a écrit :

>>It is possible that you send me a snapshot archive of your
>>entire libertas directory ? I will be sure to have the same
>>thing as you.
>>    
>>
>
>No, don't want this. You should update your git (e.g., when 
>you're a Debian Etch user, get git from backports.org). If you
>can't or don't want to do this, then you can get all the files
>via the web interface of git:
>
>Go to 
>http://git.kernel.org/?p=linux/kernel/git/linville/wireless-2.6.git
>
>Then at the end, below "heads", search the line "everything". 
>Click there to the right on "tree".
>
>Navigate to drivers/net/wireless/libertas. All files have a "raw" 
>entry. If your browser doesn't give them to you in a text 
>format, you can use the link with wget, e.g.
>
>$ wget -O 
>main.c "http://git.kernel.org/?p=linux/kernel/git/linville/wireless-2.6.git;a=blob_plain;f=drivers/net/wireless/libertas/main.c;hb=everything"
>
>
>
>
>  
>
>>The driver works but a last problem persists :
>>During ftp transfer I have these errors :
>>
>>NETDEV WATCHDOG: eth0: transmit timed out
>>libertas: tx watch dog timeout
>>NETDEV WATCHDOG: eth0: transmit timed out
>>libertas: tx watch dog timeout
>>...
>>
>>Something the file is successfully dowloaded anyway, but
>>sometime not, and I need to restart the board to have network
>>working again.
>>
>>Have you an idea of where this error can come from ?
>>    
>>
>
>I'd say you have a problem with hardware interaction. Get
>
>$ git clone 
>git://git.infradead.org/users/schurig/libertas-tools.git tools
>
>and compile lbsdebug. Then set some lbsdebug parameters, e.g. 
>enter, leave, host, cs/usb/sdio (depending on your hardware). 
>Maybe the slowdown of the driver because of excessive debug info 
>hides your problem, you have to experiment a while.
>
>For example, in the CF part there are some timeout values that I
>put there by "hindsight". They work for my hardware, but maybe 
>your hardware is slower.
>
>
>
>I have a shell script "mrv_reload", which I use while programming 
>the driver. Maybe it's handy for you (or others) as well:
>
>
>#!/bin/sh
>set -x
>
># Bring interface down and give it time to settle while we
># install the newest compiled libertas driver. Then remove the
># modules and again give it time to settle.
>ifdown eth1 2>/dev/null
>ifconfig eth1 down 2>/dev/null
>pccardctl eject
>
># The "make install" below installes the drivers to
># lib/modules/XXX/extra/, so remove any drivers from a regular
># install
>rm -rf /lib/modules/`uname -r`/kernel/drivers/net/wireless/libertas
>cd /usr/src/m8k/wireless-2.6
>make modules_install SUBDIRS=drivers/net/wireless/libertas
>rmmod usb8xxx     2>/dev/null
>rmmod libertas_cs 2>/dev/null
>rmmod libertas    2>/dev/null
>
># "mrv_reload XX"     just removes all stuff
>test -z "$1" || exit 0
>sleep 0.2
>
># Start with a clean syslog file
>rm -f /var/log/syslog
>killall -HUP syslogd
>
># Load driver, set debug options, and the bring make
># the HW available
>modprobe libertas
>
># Set wanted debugging, then "insert" the card:
>#lbsdebug +enter +leave +scan >/dev/null
>#lbsdebug +cs >/dev/null
>lbsdebug +assoc +wext +scan >/dev/null
>
># Monitor syslog activity
>tail -f /var/log/syslog # | grep libertas | \
>  cut -d: -f4- | cut -c2-
>
>
>_______________________________________________
>libertas-dev mailing list
>libertas-dev at lists.infradead.org
>http://lists.infradead.org/mailman/listinfo/libertas-dev
>
>
>  
>

-- 

Cyril Haenel
Registered Linux User #332632




More information about the libertas-dev mailing list