FC5 with bcm43xx support (HOWTO)

Robert Allerstorfer roal at anet.at
Sat Mar 25 14:21:51 EST 2006


On Sat, 25 Mar 2006, 10:52 GMT+00 David Woodhouse wrote:

> If you haven't already done so, update to the 2.6.16-1.2071_FC5 or later
> kernel, from http://people.redhat.com/davej/kernels/Fedora/FC5/ if it
> isn't in the official repos yet. The bcm43xx driver _does_ work in the
> 2054 release kernel, and I've been using it like that for months, but
> it's far less picky about its initialisation in 2071, and doesn't lose
> the network every time NetworkManager scans -- so for the sake of the
> HOWTO it's just easier if you upgrade. The improvements to the driver
> _will_ be in the official kernel update when it eventually comes out.

Thanks a lot for this detailed HOWTO! I have successfully updated the
kernel to 2.6.16-1.2074_FC5. An easy way for updating to davej test
kernels would be to save

[kernels-testing]
name=davej test kernels for Fedora Core $releasever
baseurl=http://people.redhat.com/davej/kernels/Fedora/FC$releasever/RPMS.kernel/
enabled=0
gpgcheck=0

into '/etc/yum.repos.d/davej-kernels-testing.repo'. Then, executing

yum --enablerepo=kernels-testing update kernel

would currently result in
Installed: kernel.ppc 0:2.6.16-1.2074_FC5

> Install the bcm43xx-fwcutter package from Extras. It's in extras-devel,
> but not yet in extras-fc5 yet because my request to create the branch
> hasn't been honoured yet. There's a copy of it at
> http://david.woodhou.se/bcm43xx-fwcutter-003-2.ppc.rpm (there's also
> i386 and src rpms there).

>         (By next week, hopefully the above will be reduced to 
>         'yum update kernel ; yum install bcm43xx-fwcutter')

yum --enablerepo=extras-development install bcm43xx-fwcutter

worked fine for me on FC5:
Installed: bcm43xx-fwcutter.ppc 0:003-2.fc6

> Then proceed as described
> in /usr/share/doc/bcm43xx-fwcutter-003/README.Fedora:

> As root, extract the firmware from your Windows or MacOS driver by
> running the command
>         bcm43xx-fwcutter -w /lib/firmware <DRIVERFILE>

> The README file in the same directory (not README.Fedora but just
> README) contains a bunch of links to drivers if you don't have one.
> Apparently, any of them should be OK; it doesn't matter which you use.

I used 'AppleAirPort2' from the mounted MacOSX partition:

# bcm43xx-fwcutter -w /lib/firmware /mnt/macosx/System/Library/Extensions/AppleAirPort2.kext/Contents/MacOS/AppleAirPort2
fwcutter can cut the firmware out of /mnt/macosx/System/Library/Extensions/AppleAirPort2.kext/Contents/MacOS/AppleAirPort2
  filename :  AppleAirPort2
  version  :  3.90.34.0.p16 (404.2)
  MD5      :  7200d1aef5f413ebc811046d068b40dc

WARNING! This firmware doesn't include support for 802.11a cards.
WARNING! Use this firmware only for 802.11b/g cards.

extracting bcm43xx_microcode2.fw ...
extracting bcm43xx_microcode4.fw ...
extracting bcm43xx_microcode5.fw ...
*****: Sorry, it's not posible to extract "bcm43xx_microcode11.fw".
*****: Extracting firmware from an old driver is bad. Choose a more recent one.
*****: Luckily bcm43xx driver doesn't include microcode11 uploads at the moment.
*****: But this can be added in the future...
extracting bcm43xx_pcm4.fw ...
extracting bcm43xx_pcm5.fw ...
extracting bcm43xx_initval01.fw ...
extracting bcm43xx_initval02.fw ...
extracting bcm43xx_initval03.fw ...
extracting bcm43xx_initval04.fw ...
extracting bcm43xx_initval05.fw ...
extracting bcm43xx_initval06.fw ...
extracting bcm43xx_initval07.fw ...
extracting bcm43xx_initval08.fw ...
extracting bcm43xx_initval09.fw ...
extracting bcm43xx_initval10.fw ...

The /lib/firmware directory now contains:
-rw-r--r-- 1 root root  3504 25. Mär 18:07 bcm43xx_initval01.fw
-rw-r--r-- 1 root root    16 25. Mär 18:07 bcm43xx_initval02.fw
-rw-r--r-- 1 root root     0 25. Mär 18:07 bcm43xx_initval03.fw
-rw-r--r-- 1 root root     0 25. Mär 18:07 bcm43xx_initval04.fw
-rw-r--r-- 1 root root  2536 25. Mär 18:07 bcm43xx_initval05.fw
-rw-r--r-- 1 root root   248 25. Mär 18:07 bcm43xx_initval06.fw
-rw-r--r-- 1 root root     0 25. Mär 18:07 bcm43xx_initval07.fw
-rw-r--r-- 1 root root     0 25. Mär 18:07 bcm43xx_initval08.fw
-rw-r--r-- 1 root root     0 25. Mär 18:07 bcm43xx_initval09.fw
-rw-r--r-- 1 root root     0 25. Mär 18:07 bcm43xx_initval10.fw
-rw-r--r-- 1 root root 16200 25. Mär 18:07 bcm43xx_microcode2.fw
-rw-r--r-- 1 root root 19952 25. Mär 18:07 bcm43xx_microcode4.fw
-rw-r--r-- 1 root root 22512 25. Mär 18:07 bcm43xx_microcode5.fw
-rw-r--r-- 1 root root  1312 25. Mär 18:07 bcm43xx_pcm4.fw
-rw-r--r-- 1 root root  1312 25. Mär 18:07 bcm43xx_pcm5.fw

Is this all fine or could the message regarding
"bcm43xx_microcode11.fw" cause a problem?

> Load the driver by 'modprobe bcm43xx'. NetworkManager should work with
> it, as should system-config-network and the standard initscripts.

> We disabled the automatic loading of the bcm43xx driver in FC5 because
> it's quite new and experimental, and partly because of the bugs which
> have now been fixed in the 2071 kernel. To make sure the driver gets
> loaded automatically, either add '/sbin/modprobe bcm43xx' to
> your /etc/rc.local script, or copy the alias list
> from /usr/share/doc/bcm43xx-fwcutter-003/modprobe.bcm43xx into
> the /etc/modprobe.d directory, which tells the module loaded which PCI
> IDs to associate with the bcm43xx driver.

I tried the second suggested method

cp /usr/share/doc/bcm43xx-fwcutter-003/modprobe.bcm43xx /etc/modprobe.d

however, after restarting, the 'bcm43xx' Module did not get loaded
(checked with 'lsmod').

Before proceeding, I want to make sure all steps so far worked fine.

Thanks again for your great support!

rob.




More information about the Fedora-ppc mailing list