Bug 180647

Summary: prism54 firmware fails to load on boot
Product: [Fedora] Fedora Reporter: Martin Ebourne <fedora>
Component: udevAssignee: Harald Hoyer <harald>
Status: CLOSED CURRENTRELEASE QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: 4   
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: FC-6 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2006-11-27 06:28:00 EST Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Description Martin Ebourne 2006-02-09 13:27:01 EST
Description of problem:
Latest errata of udev prevents prism54 firmware from loading at boot up. Works
ok after bootup has finished.

Version-Release number of selected component (if applicable):
udev-071-0.FC4.2

How reproducible:
Every time

Steps to Reproduce:
1. Possess machine with prism54 wireless card configured to work at boot (mine
is PCI)
2. Install udev-071-0.FC4.2
3. Reboot
  
Actual results:
The prism54 wireless card is not initialised. The following appears in messages:

Feb  9 17:59:33 hordein kernel: firmware_loading_store: unexpected value (0)
Feb  9 17:59:33 hordein kernel: prism54: request_firmware() failed for 'isl3890'
Feb  9 17:59:33 hordein kernel: wireless: could not upload firmware ('isl3890')
Feb  9 17:59:33 hordein kernel: wireless: islpci_reset: failure

Expected results:
The prism54 wireless card should be initialised and work. The above messages
should not be in the log file.

Additional info:
Discovered this when upgrading to kernel-2.6.15-1.1831_FC4, which pulled in the
new udev. Also booted to the previous kernel-2.6.14-1.1656_FC4 with the new
udev, same failure. On reverting to udev-058-1.0.FC4.1 and booting into
kernel-2.6.14-1.1656_FC4 it all works again.

Only appears to affect prism54 initialisation at bootup. If I subsequently:
  rmmod prism54
  modprobe prism54
  ifup wireless
it all works. I'm not sure if the module even needs reloading.
Comment 1 Harald Hoyer 2006-02-10 06:28:44 EST
and you have the file "isl3890" ??
Comment 2 Martin Ebourne 2006-02-10 06:45:04 EST
Of course, otherwise it wouldn't have worked before the upgrade, after I
downgraded back to udev-058 (which fixes it), or if I manually initialise the
card while still running udev-071. The only time it doesn't work is at boot with
udev-071.

% ls -al /lib/firmware/isl3890
-rw-r--r--  1 root root 93996 Aug 18  2004 /lib/firmware/isl3890

I don't think the firmware location can have moved again since it does work
after boot with a manual ifup. I've checked the firmware from prism54.org and it
is the latest version.
Comment 3 Harald Hoyer 2006-02-10 07:58:58 EST
Please check /etc/udev/rules.d/50-udev.rules and make sure, this rule is NOT in
there...

ACTION=="add", SUBSYSTEM=="firmware", ENV{FIRMWARE}=="*", \
        RUN+="/sbin/firmware_helper"
Comment 4 Martin Ebourne 2006-02-10 18:31:45 EST
Those lines are not present in 058 (which is working for me).

They are present, but are commented out with '#' in 071 (which isn't working).
There don't appear to be any other firmware related lines in any files in that
directory.
Comment 5 Martin Ebourne 2006-11-26 18:25:33 EST
Just found this old bug. This was fixed with or during FC5, and is working
correctly here with FC6.