Unfortunately, Broadcom does not allow the redistribution of the firmware needed
to operate its wireless cards that use b43 or b43legacy as a driver.
This situation is merely an annoyance when the Linux system has some other means
of connecting to the network; openSUSE contains a special script that downloads
files that contain the firmware and uses the utility b43-fwcutter to extract the
necessary files. The files that are downloaded can be redistributed, but their
12 MB size precludes them from being included in openSUSE install media.
To make the installation of the firmware as easy as possible in this troublesome
case, I have modified the standard bcm43xx firmware installation script to skip
the download stage. This new script and the necessary files are included in a
tar archive that can be downloaded using any system with network access.
The specific steps are as follows:
-
Download
http://www.lwfinger.com/b43-firmware/no_net_install_bcm43xx_firmware.tar.bz2 on
any system with a network connection. -
Copy that file to your openSUSE system via USB stick or CD.
-
From the directory where you copied the file, run the command
tar jxvf no_net_install_bcm43xx_firmware.tar.bz2
That command creates a new subdirectory bcm43xx_firmware with four files in it.
- Install the b43 and b43legacy firmware by running the command:
sudo bcm43xx_firmware/install_bcm43xx_firmware_no_net
This step will create the necessary firmware files in /lib/firmware/b43/ and
/lib/firmware/b43legacy/ and then reboot your computer. When it comes back up,
the wireless device should be working and can be configured in the normal manner.
- (optional) If you do not have much disk space available, you can save about
25 MB by using the commands
rm -rf bcm43xx_firmware
rm no_net_install_bcm43xx_firmware.tar.bz2
The downloaded file is suitable for all supported versions of openSUSE, and
works for all architectures. I suggest that you leave it on whatever medium you
used to transport it to openSUSE so that it will be available for your next
installation of openSUSE.
Larry Finger