Friday 5 November 2010

Wireless Networking on Maverick

Once I shifted to Maverick Meercat, I found that the drivers became obstinate. Helpfully the Broadcom folks have uploaded a couple of patches which sorts this out. These are then, updated instructions on how to get the fucking thing to work.

cd /media/2G
wget http://www.broadcom.com/docs/linux_sta/hybrid-portsrc-x86_32-v5.60.48.36.tar.gz 
wget http://www.broadcom.com/docs/linux_sta/sta_5.60.48.36_2.6.33_kernel_patch.zip
wget http://www.broadcom.com/docs/linux_sta/sta_5.60.48.36_2.6.34_multicast_kernel_patch.zip

My USB Stick is called [2G] so Ubuntu automounts it into a directory with the same name in [/media]. The next command downloads the latest version of the hybrid driver. I am not sure what a hybrid driver is, but if I had to guess I would say it is a driver AND firmware contained in the same package. Incidentally, you could just use the same URL in windows and save the file to the USB Key. You then reboot to the USB Key and run the following commands (ideally from a script):

cd /tmp
cp /cdrom/hybrid-portsrc-x86_32-v5.60.48.36.tar.gz .
mkdir hybrid_wl 
cd hybrid_wl 
tar -xzvf ../hybrid-portsrc-x86_32-v5.60.48.36.tar.gz
unzip /cdrom/sta_5.60.48.36_2.6.33_kernel_patch.zip
patch -p0 < patch
unzip /cdrom/linux_sta/sta_5.60.48.36_2.6.34_multicast_kernel_patch.zip
patch -p0 < patch_hybrid_multicast
make clean
make
sudo rmmod b43 
sudo rmmod b44 
sudo rmmod b43legacy
sudo rmmod wl
sudo rmmod ssb 
sudo rmmod ndiswrapper 
sudo rmmod lib80211
sudo modprobe lib80211
sudo insmod wl.ko

The [cp] commands [c]o[p]ys the file we downloaded into the current [.] directory, which is [/tmp] because we just moved into it. The patch commands change the source code files in terms of the instructions contained in the special patch files.

There are lots of [r]e[m]ove [mod]ules commands, because there are so many modules which potentially interfere with the [wl] driver. Again, once this script has finished, the interface should be up and running. This one will take a little longer to run because it is building the module from source code each time.

No comments:

Post a Comment