1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Memory
  5. Motherboards
  6. Processors
  7. Software
  8. Storage
  9. Operating Systems


Facebook RSS Twitter Twitter Google Plus


Phoronix Test Suite

OpenBenchmarking.org

Broadcom BCM4306 + FC5

Hardware

Published on 16 April 2006 01:00 AM EDT
Written by Michael Larabel in Hardware
Comment On This Article

Back during COMDEX Las Vegas in 2002, Broadcom had shipped the industry's first 54Mb/s 2.4GHz wireless LAN solution, which was named the BCM4306. This 802.11g/b BCM4306 solution was accompanied by the BCM4309 dual-band, BCM2050, and BCM4702. While we haven't had much in the way of problems with some Linux distributions -- specifically Debian-based distros -- some others haven't faired quite as well with out-of-the-box support. The Broadcom BCM4306 solution that we have been using is PCI based and came from Minitar with a model number of MN54GPC. With a bit of tweaking, we have had no troubles getting the Minitar MN54GPC (BCM4306) working with Fedora Core 5 and the 2.6.16-1.2080_FC5 kernel.

lspci -v

03:04.0 Network controller: Broadcom Corporation BCM4306 802.11b/g Wireless LAN Controller
        Subsystem: Micro-Star International Co., Ltd. Unknown device 6825
        Flags: bus master, fast devsel, latency 32, IRQ 19
        Memory at fb028000 (32-bit, non-prefetchable) [size=8K]
        Capabilities: [40] Power Management version 2

While the Broadcom BCM4306 Linux support isn't comparable to the magnificent open-source capabilities with the Atheros 802.11g Chipsets and the use of MadWifi, the BCM4306 does have some Linux drivers available. The open-source Broadcom 43xx Linux driver is quite experimental as Broadcom has yet to publicly release the specifications for their WiFi chips. We had attempted to use these BC43XX drivers with the Minitar MN54GPC, however, the module would fail to work in our tests. We had used the bcm43xx-fwcutter RPM from the official Fedora 5 Extras repository, and had extracted the card's firmware out of the Windows wireless drivers. In fact, we had tried cutting multiple Windows drivers to attain the firmware but in all instances in combination with the Linux BCM43XX drivers, the card had failed to work. Below is an example of the bcm43xx-fwcutter at work.

bcm43xx-fwcutter -w /lib/firmware ~/Desktop/bcmwl5a/bcmwl5.sys

bcm43xx-fwcutter can cut the firmware out of /root/Desktop/bcmwl5a/bcmwl5.sys

  filename :  bcmwl5.sys
  version  :  3.40.25.3
  MD5      :  5e58a3148b98c9f356cde6049435cb21

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 alternate option (which ultimately worked) was using ndiswrapper. After building ndiswrapper on Fedora Core 5, we simply had installed the Windows Broadcom display drivers (bcmwl5/bcmwl5a) following by creating a network-script entry for wlan0, and then loading the ndiswrapper module. With those steps (among a few other tweaks) accomplished, the Minitar MN54GPC (BCM4306) had no problems running under Fedora Core 5 with the 2.6.16 kernel. One little issue that we had faced though, was while running NetworkManager, we had experienced some connection issues with one of our wireless networks.

ndiswrapper -i bcmwl5.inf

ndiswrapper -l

Installed drivers:
bcmwl5          driver installed
bcmwl5a         driver installed, hardware present

ndiswrapper -v

utils version: 1.8
driver version:        1.13
vermagic:       2.6.16-1.2080_FC5 686 REGPARM 4KSTACKS gcc-4.1

cat /etc/sysconfig/network-scripts/ifcfg-wlan0

DEVICE=wlan0
BOOTPROTO=dhcp
ONBOOT=yes
TYPE=Wireless
NETMASK=
DHCP_HOSTNAME=
IPADDR=
DOMAIN=
HWADDR=
ESSID=phoronix
CHANNEL=1
MODE=Auto
RATE=Auto
USERCTL=no
IPV6INIT=no
PEERDNS=yes

With a bit of tweaking, it certainly wasn't difficult to get the Broadcom BCM4306 802.11g device working with Fedora Core 5 using ndiswrapper.

ifconfig

wlan0     Link encap:Ethernet  HWaddr 00:0C:76:71:4D:89
          inet addr:192.168.0.123  Bcast:192.168.0.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:76ff:fe71:4d89/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:3490 errors:0 dropped:0 overruns:0 frame:0
          TX packets:4691 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:271196 (264.8 KiB)  TX bytes:4223349 (4.0 MiB)
          Interrupt:19 Memory:fb028000-fb02a000

iwconfig

wlan0     IEEE 802.11g  ESSID:"phoronix"  Nickname:"phortest"
          Mode:Auto  Frequency:2.437 GHz  Access Point: 00:11:95:BC:10:CF
          Bit Rate=24 Mb/s   Tx-Power:25 dBm
          RTS thr=2347 B   Fragment thr=2346 B
          Encryption key:off
          Power Management:off
          Link Quality:100/100  Signal level:-73 dBm  Noise level:-256 dBm
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0


About The Author
Michael Larabel is the principal author of Phoronix.com and founded the web-site in 2004 with a focus on enriching the Linux hardware experience and being the largest web-site devoted to Linux hardware reviews, particularly for products relevant to Linux gamers and enthusiasts but also commonly reviewing servers/workstations and embedded Linux devices. Michael has written more than 10,000 articles covering the state of Linux hardware support, Linux performance, graphics hardware drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated testing software. He can be followed via and or contacted via .
Latest Linux Hardware Reviews
  1. NVIDIA GeForce GTX 970 Offers Great Linux Performance
  2. CompuLab Intense-PC2: An Excellent, Fanless, Mini PC Powered By Intel's i7 Haswell
  3. From The Atom 330 To Haswell ULT: Intel Linux Performance Benchmarks
  4. AMD Radeon R9 285 Tonga Performance On Linux
Latest Linux Articles
  1. 6-Way Ubuntu 14.10 Linux Desktop Benchmarks
  2. Ubuntu 14.10 XMir System Compositor Benchmarks
  3. Btrfs RAID HDD Testing On Ubuntu Linux 14.10
  4. Ubuntu 14.10 Linux 32-bit vs. 64-bit Performance
Latest Linux News
  1. Coreboot Now Has Support For Intel Broadwell Hardware
  2. Enlightenment's EFL 1.12 Alpha Has Evas GL-DRM Engine, OpenGL ES 1.1 Support
  3. GTK+ Lands Experimental Backend For Mir Display Server
  4. Ubuntu 14.10 Officially Released
  5. Mesa 10.4 Might Re-Enable HyperZ For R600g/RadeonSI
  6. Intel GVT-g GPU Virtualization Moves Closer
  7. GTK+ 3.16 To Bring Several New Features
  8. Debian 8.0 Jessie Has Many Multimedia Improvements
  9. What Linux Benchmarks Would You Like To See Next?
  10. Open-Source, Linux Support For Corsair Link Devices Slowly Materializing
Latest Forum Discussions
  1. Linux hacker compares Solaris kernel code:
  2. Advertisements On Phoronix
  3. HOPE: The Ease Of Python With The Speed Of C++
  4. Updated and Optimized Ubuntu Free Graphics Drivers
  5. Users/Developers Threatening Fork Of Debian GNU/Linux
  6. Ubuntu 16.04 Might Be The Distribution's Last 32-Bit Release
  7. AMD Releases UVD Video Decode Support For R600 GPUs
  8. Proof that strlcpy is un-needed