Could not find firmware, system freezes

Live forum: http://rt2x00.serialmonkey.com/viewtopic.php?t=4285

ziomal22

21-09-2007 11:32:58

Hi!
I've searched a lot, here and googled, I've tried many many things, and nothing works. So please dont kill me if there is solution on this forum, maybe i'm dumb -)

I have ubuntu FF 7.04, and DLink g630. AFAIK it needs rt61. I've deleted default rt61pci, and tried to install many versions of drivers (not all in once ofcoz -P). Before installation system got freezed when I plugged in card, with no specific errors in dmesg (AFAIR). After many reading I found out that I must install CVS version of rt61. So i did. With today's version, when I plug in card, system instantly freezes with error "could not find firmware". Sometimes (rare) system doesn't freeze, but error is the same.

Kernel 2.6.20-16-generic, on laptop asus x51r.

Is it possible that there are some remains of earlier drivers i've tried to install? Can it be a reason of problems? I've even tried to install drivers (not-CVS version) on 2.6.20-16-386 kernel (I've read that it can help).

I wouldn't to reinstall my system because of many personalization i've done.

If anybody can help me, please reply this topic. I dont know what kind of logs i should post here. TIA

IvD

21-09-2007 18:21:43

Well if it complains about missing firmware, I would start wondering about if you have installed the firmware...

Also make sure that either udev with hotplug enabled is working or the hotplug daemon is installed and running.

ziomal22

21-09-2007 18:34:22

[quote2cl7wvv4]Well if it complains about missing firmware, I would start wondering about if you have installed the firmware... [/quote2cl7wvv4]

I've checked /lib/firmware/ (etc etc, i dont remeber the path now), and there are .bin files (rt2561.bin, rt2561s.bin, rt2600.bin afair). Should there be any other files?

[quote2cl7wvv4]Also make sure that either udev with hotplug enabled is working or the hotplug daemon is installed and running.[/quote2cl7wvv4]

Could you tell me how to check this? I really dont know oops

Spy84464

23-09-2007 19:56:52

Hello,
I've checked /lib/firmware/ (etc etc, i dont remeber the path now), and there are .bin files (rt2561.bin, rt2561s.bin, rt2600.bin afair). Should there be any other files?[/quote11l32v32]
No, these are the files needed.

[quote11l32v32]Also make sure that either udev with hotplug enabled is working or the hotplug daemon is installed and running.[/quote11l32v32]

Could you tell me how to check this? I really dont know oops[/quote11l32v32]
You could check if one of these processes (udev or hotplug) is running.

Regards,
Romain

ziomal22

29-09-2007 13:47:30

Hi, sorry for late answer but I've just checked whether udev or hotplug is running, and I found
[code2pk4u7dx]/sbin/udevd -- daemon[/code2pk4u7dx]

Is it ok or is there missing something? Should I configure path to the firmware or something? Please help... (

Spy84464

30-09-2007 09:47:02

That should be ok, but you need to find in which directory udev is looking for firmwares. That's usually /lib/firmware but distribution sometimes set something else.
Make sure that the module "firmware_class" is loaded as well, check with "lsmod". If it's not, run "modprobe firmware_class" as root.

hennichodernich

30-09-2007 11:20:50

Hi, sorry for late answer but I've just checked whether udev or hotplug is running, and I found
[codesavaa15h]/sbin/udevd -- daemon[/codesavaa15h]

Is it ok or is there missing something? Should I configure path to the firmware or something? Please help... ([/quotesavaa15h]
Do you have a firmware loading rule for udev?
[codesavaa15h]henning@nyquist:~> grep firmware /etc/udev/rules.d/*
[...]
/etc/udev/rules.d/50-udev-default.rules:# kernel firmware loader
/etc/udev/rules.d/50-udev-default.rules:SUBSYSTEM=="firmware", ACTION=="add", RUN+="firmware.sh"
[...]
[/codesavaa15h]firmware.sh (located in /lib/udev/) then does the actual firmware loading and has the firmware path hardcoded in.

regards
Henning

ziomal22

30-09-2007 19:15:09

Hi guys, thank you for your replies! But it is not end of my problems ;/

@Spy84464 I cant run firmware_class module (there is no such module -/).

@hennichodernich I've checked this and I have
[code1lalcywg]/etc/udev/rules.d/80-programs.rules:SUBSYSTEM=="firmware", ACTION=="add", RUN+="firmware_helper"[/code1lalcywg]
I cant open firmware_helper (in /lib/udev) because it's binary.
Also I dont have "firmware.sh" in /lib/udev -(

Any ideas? ?

IvD

30-09-2007 21:22:56

Instead of firmware_class, make sure the fw_loader module is loaded.

hennichodernich

01-10-2007 06:55:31


@hennichodernich I've checked this and I have
[code28ngl5y0]/etc/udev/rules.d/80-programs.rules:SUBSYSTEM=="firmware", ACTION=="add", RUN+="firmware_helper"[/code28ngl5y0]
I cant open firmware_helper (in /lib/udev) because it's binary.
Also I dont have "firmware.sh" in /lib/udev -(

Any ideas? ?[/quote28ngl5y0]

What does [code28ngl5y0]strings /lib/udev/firmware_helper[/code28ngl5y0] show?

regards
Henning

ziomal22

01-10-2007 13:49:02

[quote3s5m7y7r]Instead of firmware_class, make sure the fw_loader module is loaded.[/quote3s5m7y7r]
Module fw_loader not found -/
[quote3s5m7y7r]What does "strings /lib/udev/firmware_helper" show?[/quote3s5m7y7r]
here it goes
[code3s5m7y7r]/lib/ld-linux.so.2
libselinux.so.1
__gmon_start__
_Jv_RegisterClasses
_init
_fini
libsepol.so.1
libc.so.6
_IO_stdin_used
strcpy
exit
strncmp
strrchr
mmap64
closedir
strncpy
__stack_chk_fail
unlink
mkdir
chmod
strtol
getpwnam
openlog
__errno_location
rmdir
memcmp
__fxstat64
getgrnam
fclose
malloc
strcasecmp
vsyslog
opendir
__xstat64
getenv
__ctype_b_loc
munmap
strncasecmp
chown
strchr
fprintf
readdir64
uname
fopen64
strcmp
strerror
__libc_start_main
write
closelog
snprintf
free
_edata
__bss_start
_end
GLIBC_2.4
GLIBC_2.3
GLIBC_2.2
GLIBC_2.1
GLIBC_2.0
PTRh0
QVh-
t$PWh
[^_]
WVSQ
RRhZ
WPh1
Y[^_]
[^_]
t"Rh
[^_]
tu<.t
t)QQj.
[^_]
t^Pj
tDPPh
t0PPh
[^_]
WVS1
< v%
QWh4
[^_]
[^_]
WVS1
,</u
[^_]
t.PPhP
PPhT
RPSj
QQj
_Xj/S
VVj/W
[^_]
XZj/S
J</t
[^_]
/sys/%s/loading
UDEV_LOG
firmware_helper
PHYSDEVDRIVER
(unknown)
DEVPATH
FIRMWARE
ACTION
%s: missing devpath, action or firmware
%s: unable to get kernel version
/lib/firmware/%s/%s
/lib/firmware/%s
/sys/%s/data
%s: loaded '%s' for device '%s'
%s: error loading '%s' for device '%s' with driver '%s'
main
%s: specified group '%s' unknown
%s: error resolving group '%s': %s
%s: specified user '%s' unknown
%s: error resolving user '%s': %s
%s=%s
%s: unable to open '%s': %s
info
debug
lookup_group
lookup_user
add_matching_files
#$%+-./:=?*@_,
true
%s: chown(%s, 0, 0) failed: %s
%s: chmod(%s, 0000) failed: %s
%s: unlink(%s) failed: %s
%s: rmdir(%s) failed: %s
unlink_secure
delete_path
[/code3s5m7y7r]

hennichodernich

01-10-2007 17:15:31

Ok, [code1fe12gvn]/lib/firmware/`uname -r`[/code1fe12gvn] should be fine as a firmware location. What does [code1fe12gvn]ls -l /lib/firmware/`uname -r`[/code1fe12gvn] (the backticks are essential!) show? Exactly there you should find the firmware files, not in a neighbour directory. (If you are curious The shell will replace `uname -r` by the output of the command "uname -r".)

regards
Henning

ziomal22

01-10-2007 18:23:44

@hennichodernich
Here goes the listing

[code2z8bu5ow]drwxr-xr-x 13 root root 4096 2007-06-30 17:02 acx
-rw-r--r-- 1 root root 22622 2007-06-07 23:00 aic94xx-seq.fw
-rw-r--r-- 1 root root 30348 2007-06-07 23:00 atmel_at76c502_3com.bin
-rw-r--r-- 1 root root 35184 2007-06-07 23:00 atmel_at76c502_3com-wpa.bin
-rw-r--r-- 1 root root 31764 2007-06-07 23:00 atmel_at76c502.bin
-rw-r--r-- 1 root root 31764 2007-06-07 23:00 atmel_at76c502d.bin
-rw-r--r-- 1 root root 35276 2007-06-07 23:00 atmel_at76c502d-wpa.bin
-rw-r--r-- 1 root root 31776 2007-06-07 23:00 atmel_at76c502e.bin
-rw-r--r-- 1 root root 35272 2007-06-07 23:00 atmel_at76c502e-wpa.bin
-rw-r--r-- 1 root root 35276 2007-06-07 23:00 atmel_at76c502-wpa.bin
-rw-r--r-- 1 root root 28164 2007-06-07 23:00 atmel_at76c503-i3861.bin
-rw-r--r-- 1 root root 28040 2007-06-07 23:00 atmel_at76c503-i3863.bin
-rw-r--r-- 1 root root 35372 2007-06-07 23:00 atmel_at76c503-rfmd-0.90.2-140.bin
-rw-r--r-- 1 root root 37804 2007-06-07 23:00 atmel_at76c503-rfmd-acc.bin
-rw-r--r-- 1 root root 37964 2007-06-07 23:00 atmel_at76c503-rfmd.bin
-rw-r--r-- 1 root root 35180 2007-06-07 23:00 atmel_at76c504_2958-wpa.bin
-rw-r--r-- 1 root root 39928 2007-06-07 23:00 atmel_at76c504a_2958-wpa.bin
-rw-r--r-- 1 root root 31748 2007-06-07 23:00 atmel_at76c504.bin
-rw-r--r-- 1 root root 35196 2007-06-07 23:00 atmel_at76c504c-wpa.bin
-rw-r--r-- 1 root root 37009 2007-06-07 23:00 atmel_at76c505a-rfmd2958.bin
-rw-r--r-- 1 root root 37000 2007-06-07 23:00 atmel_at76c505-rfmd2958.bin
-rw-r--r-- 1 root root 35532 2007-06-07 23:00 atmel_at76c505-rfmd.bin
-rw-r--r-- 1 root root 31824 2007-06-07 23:00 atmel_at76c506.bin
-rw-r--r-- 1 root root 35228 2007-06-07 23:00 atmel_at76c506-wpa.bin
-rw-r--r-- 1 root root 12772 2005-12-01 22:10 dvb-fe-or51132-qam.fw
-rw-r--r-- 1 root root 17532 2005-12-01 22:10 dvb-fe-or51132-vsb.fw
-rw-r--r-- 1 root root 8518 2005-12-01 22:10 dvb-fe-or51211.fw
-rw-r--r-- 1 root root 239956 2005-12-01 22:10 dvb-ttpci-01.fw
-rw-r--r-- 1 root root 10757 2005-12-01 22:10 dvb-usb-avertv-a800-02.fw
-rw-r--r-- 1 root root 9180 2005-12-01 22:10 dvb-usb-dibusb-5.0.0.11.fw
-rw-r--r-- 1 root root 7558 2005-12-01 22:10 dvb-usb-dibusb-6.0.0.8.fw
-rw-r--r-- 1 root root 7431 2005-12-01 22:10 dvb-usb-dtt200u-01.fw
-rw-r--r-- 1 root root 4286 2005-12-01 22:10 dvb-usb-umt-010-02.fw
-rw-r--r-- 1 root root 10752 2005-12-01 22:10 dvb-usb-vp702x-01.fw
-rw-r--r-- 1 root root 10752 2005-12-01 22:10 dvb-usb-vp7045-01.fw
-rw-r--r-- 1 root root 8581 2005-12-01 22:10 dvb-usb-wt220u-01.fw
-rw-r--r-- 1 root root 209190 2007-06-07 23:00 ipw2100-1.3.fw
-rw-r--r-- 1 root root 201138 2007-06-07 23:00 ipw2100-1.3-i.fw
-rw-r--r-- 1 root root 196458 2007-06-07 23:00 ipw2100-1.3-p.fw
-rw-r--r-- 1 root root 191142 2007-06-07 23:00 ipw2200-bss.fw
-rw-r--r-- 1 root root 185660 2007-06-07 23:00 ipw2200-ibss.fw
-rw-r--r-- 1 root root 187836 2007-06-07 23:00 ipw2200-sniffer.fw
-rw-r--r-- 1 root root 115108 2007-06-07 23:00 ipw3945.ucode
-rw-r--r-- 1 root root 112128 2007-06-07 23:00 isl3877
-rw-r--r-- 1 root root 29024 2007-06-07 23:00 isl3886
-rw-r--r-- 1 root root 30060 2007-06-07 23:00 isl3887usb_bare
-rw-r--r-- 1 root root 93996 2007-06-07 23:00 isl3890
-rw-r--r-- 1 root root 29468 2007-06-07 23:00 isl3890usb
-rw-r--r-- 1 root root 148328 2007-06-07 23:00 iwlwifi-3945.ucode
-rw-r--r-- 1 root root 76802 2007-06-07 23:00 ql2100_fw.bin
-rw-r--r-- 1 root root 84566 2007-06-07 23:00 ql2200_fw.bin
-rw-r--r-- 1 root root 123170 2007-06-07 23:00 ql2300_fw.bin
-rw-r--r-- 1 root root 132978 2007-06-07 23:00 ql2322_fw.bin
-rw-r--r-- 1 root root 206500 2007-06-07 23:00 ql2400_fw.bin
-rw-r--r-- 1 root root 8192 2007-06-07 23:00 rt2561.bin
-rw-r--r-- 1 root root 8192 2007-06-07 23:00 rt2561s.bin
-rw-r--r-- 1 root root 8192 2007-06-07 23:00 rt2661.bin
-rw-r--r-- 1 root root 2048 2007-06-07 23:00 rt73.bin
-rw-r--r-- 1 root root 262144 2007-06-07 23:00 v4l-cx2341x-dec.fw
-rw-r--r-- 1 root root 262144 2007-06-07 23:00 v4l-cx2341x-enc.fw
-rw-r--r-- 1 root root 155648 2007-06-07 23:00 v4l-cx2341x-init.mpg
-rw-r--r-- 1 root root 16382 2007-06-07 23:00 v4l-cx25840.fw
-rw-r--r-- 1 root root 8192 2007-06-07 23:00 v4l-pvrusb2-24xxx-01.fw
-rw-r--r-- 1 root root 8192 2007-06-07 23:00 v4l-pvrusb2-29xxx-01.fw
drwxr-xr-x 2 root root 4096 2007-06-09 08:22 zd1211
[/code2z8bu5ow]

Looks ok? (I can see rt2*** files, so I dont understand why it's not working ;/)

[quote2z8bu5ow]If you are curious [...][/quote2z8bu5ow]
Sure I am -)

mengedej

13-08-2008 18:50:02

Hello everyone,
I'm on Ubuntu kernel "2.6.24-19-generic" and I am in the same situation ziomal22 except my system didn't freeze originally. (the original kernel modules seemed to drop the connection after every 300Mb or so and it motivated me to change...)

I installed "rt61-cvs-2008080603" rt61 module, blacklisted the original modules and placed firmware in /lib/firmware/ (seems identical to the ones in /lib/firmware/`uname -r`)

My problem is that wlan0 never comes up at boot since it claims itcannot load the firmware. (Module is loaded and I can 'sudo ifconfig wlan0 up' and launch rutilt, select my profile and it works just fine! possibly a little slow... about 1.6 Mb/s)

modinfo rt61pci lists
[quoted9wfaxtv]filename /lib/modules/2.6.24-19-generic/kernel/drivers/net/wireless/rt2x00/rt61pci.ko
license GPL
firmware rt2661.bin
firmware rt2561s.bin
firmware rt2561.bin
description Ralink RT61 PCI & PCMCIA Wireless LAN driver.
version 2.0.10
author http//rt2x00.serialmonkey.com
srcversion D71C36F67F7A0F8B005A78F
alias pciv00001814d00000401sv*sd*bc*sc*i*
alias pciv00001814d00000302sv*sd*bc*sc*i*
alias pciv00001814d00000301sv*sd*bc*sc*i*
depends rt2x00lib,rt2x00pci,mac80211,eeprom_93cx6
vermagic 2.6.24-19-generic SMP mod_unload 586 [/quoted9wfaxtv]

modinfo rt61 gives
[quoted9wfaxtv]filename /lib/modules/2.6.24-19-generic/extra/rt61.ko
license GPL
description Ralink RT61 802.11abg WLAN Driver 1.1.0 CVS 2008080603
author http//rt2x00.serialmonkey.com
srcversion 1F664B3491650A8D906839A
alias pciv00001814d00000401sv*sd*bc*sc*i*
alias pciv00001814d00000302sv*sd*bc*sc*i*
alias pciv00001814d00000301sv*sd*bc*sc*i*
depends
vermagic 2.6.24-19-generic SMP mod_unload 586
parm debugDebug mask n selects filter, 0 for none (int)
parm ifnameNetwork device name (default wlan%d) (charp)
[/quoted9wfaxtv]
note lack of firmware (but rt61pci seems to find it?)

Other than that I have followed every step in this post and I have identical result to ziomal22's

Let me know if I can provide any more information, meanwhile I'm stuck right here.

Thanks for your support!

Spy84464

18-08-2008 21:45:37

Hello,
I may not have understood you well, but if rt61 works at some point (you said that applying a profile in RutilT works), then it must find the firmware somehow. It could simply be a configuration problem that prevents the connection from working on boo
I'm not sure if "modinfo rt61" is supposed to report the firmwares used, it may just be that rt2x00 (rt61pci) does a little more, or it could simply be some hard-coded strings.

Regards,
Romain

IvD

19-08-2008 17:49:43

The difference if modinfo isn't important. rt2x00 simply reports which firmware files it needs which allows userspace tools to make use of it when creating initrd's, installing firmware, or things like that.

mengedej

21-08-2008 20:35:10

[quote1jh9ck44]
...but if rt61 works at some point (you said that applying a profile in RutilT works), then it must find the firmware somehow. It could simply be a configuration problem that prevents the connection from working on boot...
[/quote1jh9ck44]

Yeah, I seems likley it is related to Ubuntu then. (default installation except the changes I have already mentioned)
Are there any Ubuntu users out there that recognise this problem or that does not?

Thanks

Spy84464

22-08-2008 20:22:24

They are several way to have your connection started on boot with Ubuntu. One way is to edit the file "/etc/network/interfaces". You'll find many examples in other threads.
You can also have RutilT applying a profile as soon as it's started.