Red Hat Bugzilla – Bug 296421
kernel 22.214.171.124 breaks bcm4306 b43; 126.96.36.199 OK
Last modified: 2007-11-30 17:12:16 EST
Description of problem:
booting kernel 188.8.131.52-76.f7 breaks bcm4306 using b43 driver; booting
184.108.40.206-65.f7 works fine.
lspci | egrep BCM
02:03.0 Network controller: Broadcom Corporation BCM4306 802.11b/g Wireless LAN
Controller (rev 02)
02:03.0 0280: 14e4:4320 (rev 02)
Nothing blacklisted, not using ndiswrapper
When 220.127.116.11 is booted, b43 is loaded, but no messages are displayed (even
after 'rmmod b43; modprobe b43'). On the first invocation of this, I did get
kernel: ssb: Sonics Silicon Backplane found on PCI device 0000:02:03.0
Wild guess: PCI ID has been lost
Can you test with kernel-18.104.22.168-81.fc7 from the updates-testing repository?
What firmware do you have? Was it extracted with b43-fwcutter? Or the older
bcm43xx-fwcutter (note the name difference)?
I will test kernel-22.214.171.124-81.fc7 when I get home in about 7 hours.
I do not recall precisely which firmware cutter I used last, probably
bcm43xx-fwcutter, but I believe I downloaded the sources for b43-fwcutter too
when trying to initially get this card working. In my notes I have:
sudo bcm43xx-fwcutter -w /lib/firmware/ broadcom-wl-4.00.53.0/kmod/wl_apsta.o
Which now seems to be in direct conflict with today's reading of
http://linuxwireless.org/en/users/Drivers/b43, which is very clear about using
the new cutter (b43-fwcutter) on the new v4 driver.
But do note that no messages were displayed about the inability to load firmware.
Thanks for your comments and suggestions!
Actually, for F7 bcm43xx-fwcutter is correct. The command line you cited
above should be fine.
Hmmm...well, almost fine. I presume you meant to have 80 instead of 00...
Also, can you include the output of lsmod?
yes, it was broadcom-wl-126.96.36.199 - I must not have cut&pasted that one.
kernel-188.8.131.52-81.fc7 made no difference.
I downloaded the b43-fwcutter and ran:
sudo b43-fwcutter-008/b43-fwcutter -w /lib/firmware \
I have a new /lib/firmware/b43 directory well-populated.
No difference with any kernels. E.g., 'iwconfig' showed no eth1 on > 184.108.40.206.
lsmods of each kernel will be attached.
Created attachment 200401 [details]
Yes, nvidia is loaded, but this kernel's b43 works! [will repeat w/o nvidia if
Created attachment 200411 [details]
(all of these run through sort for easier diffing)
Created attachment 200421 [details]
lsmod of 220.127.116.11
I also have a problem with .22.5
Did not try .22.6 yet
Other notes: in .22.4, the only way to make my adapter work is to extract
firmware using bcm43xx-fwcutter and then modprobe b43. Using bcm43xx module
doesn't work with bcm43xx-fwcutter; using b43-fwcutter doesn't work with b43 module.
I've asked guys over at bcm43xx project and they told me it must be something
messed up on Fedora side (and thus cannot help). According to them, b43 should
not work with bcm43xx-fwcutter.
I'm using their recommended firmware image
00:09.0 Network controller: Broadcom Corporation BCM4306 802.11b/g Wireless LAN
Controller (rev 02)
This is a mini-PCI card in HP laptop
No offense, but why is this low priority?
Any way it can be elevated?
Can I do something to fix the stuff, or at least help diagnosing/debugging it?
bcm43xx-fwcutter is the proper tool to use for F-7 kernels. F-7 kernels have
a patch to continue using the older firmware format. The idea was to prevent
breaking setups that were already working.
Please try the kernels here:
They are very up-to-date w.r.t. the b43 driver. Does the issue persist for
Yes, problems persist.
I do not think this is firmware issue. I renamed /lib/firmware, 'modprobe -r
b43', messages said:
Oct 1 09:44:12 localhost kernel: ACPI: PCI interrupt for device 0000:02:03.0
'modprobe b43' logged just these two lines (repeat: /lib/firmware does not exist):
Oct 1 09:44:20 localhost kernel: ACPI: PCI Interrupt 0000:02:03.0[A] -> Link
[LNKD] -> GSI 11 (level, low) -> IRQ 11
Oct 1 09:44:20 localhost kernel: ssb: Sonics Silicon Backplane found on PCI
That's it. No complaints about unable to load firmware.
With an empty /lib/firmware directory, running 'bcm43xx-fwcutter -w
/lib/firmware broadcom-wl-18.104.22.168/kmod/wl_apsta.o' made
Can you attach (or copy & paste) the output
of 'cat /sys/bus/ssb/devices/ssb0\:0/uevent'?
I suspect you may have an usupported wireless core...
# cat /sys/bus/ssb/devices/ssb0\:0/uevent
OK, so you have a device that is not supported by the b43 driver. It should
be supported by the b43legacy driver, but we do not have b43legacy enabled in
F7. So, you should be using the bcm43xx driver. This requires a little
First, you need different firmware for that driver. Download this file:
Then extract the firmware from it:
bcm43xx-fwcutter -w /lib/firmware wl_apsta-22.214.171.124.o
Next you will need to take the file called "bcm43xx-override" (attached in
next comment) and save it in /etc/modprobe.d before rebooting. You may also
want to remove any "alias wlan0" lines from /etc/modprobe.conf and possibly
add "alias eth1 bcm43xx".
After rebooting, does wireless work better for you?
Created attachment 212481 [details]
Yes, the above works - thanks.
I commented out an existing 'alias eth1 b43' from modprobe.conf and got success
without the suggested 'alias eth1 bcm43xx'.
What's a mortal user to do with changes like this mid-life in a release?
Could you reference more info about bcm43xx versus b43legacy drivers?
So are you saying that bcm43xx-mac80211 was working for you in the past? When
that driver became b43, the expectation was that anything that worked with
that driver would work with b43 and that anything that didn't work with b43
already required use of the bcm43xx driver.
As for the b43legacy driver, it is essentially the port of the bcm43xx driver
to the new mac80211 infrastructure. If/when you move the Fedora 8 you will
have to use the b43legacy driver for your current hardware. The b43 and
b43legacy drivers in Fedora 8 both use the new firmware format, so if/when you
move to Fedora 8 you will also need to re-extract the firmware using the
Hth! Closing as RAWHIDE, as that should load the correct (i.e. b43legacy)
Per comment #1, I'm saying the b43 driver was working for me with
kernel-126.96.36.199-65.f7 and it stopped working for newer kernel releases. I
consider that a regression without warning.
Thanks for the driver explanation and a heads-up on F8 driver to use!