Get the Broadcom BCM4311 to work in Linux
So I was pulling my hair for a bit on this. Now to start off the driver for this card is still under major development along with the whole wireless subsystem in the Linux kernel so this could become outdated soon.
So first lets download the kernel. I am gonna use kernel 2.6.18.1 since it just seems to work. There are a few upstream patches for .19 but they locked up my cpu.
cd /usr/src
wget http://ftp.kernel.org/pub/linux/kernel/v2.6/linux-2.6.20.tar.bz2
wget ftp://lwfinger.dynalias.org/patches/combined_2.6.20.patch
Now lets extract the kernel
tar xfj linux-2.6.20.tar.bz2
ln -s linux-2.6.20 linux
Ok now lets apply the patches
cd linux
patch -p1 < ../combined_2.6.20.patch
Now you want to compile your kernel.. I will not go into this.. there are plenty of howtos that describe it. Now you have to install the bcm43xx-fwcutter package
Now you want to get the driver. You have to use v3 of it.. I will post the one I used. From what I know it shouldn't matter if you have a 64 or 32 bit system. I could be wrong though. You want to run cutter as root
cd /tmp
wget http://www.zcentric.com/brcmDrv340rc100a.zip
unzip brcmDrv340rc100a.zip
bcm43xx-fwcutter -w /lib/firmware /tmp/bcmwl5.sys
Once the kernel is installed and you rebooted you should be able to boot into the new kernel and the light for the wireless should turn on which means the radio is on. The following command should return APs
iwlist scan ethX
If for some reason it doesn't work.. try to extract the firmware into the kernel version
mkdir /lib/firmware/2.6.20
bcm43xx-fwcutter -w /lib/firmware/2.6.20 /tmp/bcmwl5.sys