After searching for ways to get wireless working on my HP dv9000, I came across this thread. Apparently, Broadcom offers linux drivers for it's 802.11a/b/g/n cards (chipsets BCM4311, BCM4312, BCM4321, and BCM4322, in both 32 and 64 bit).
Figuring that there are other people out there with the same problem: here's the steps I took to install the native drivers:
- Download the appropriate driver
I downloaded the 64 bit version of the driver from http://www.broadcom.com/support/802.11/linux_sta.php
It's important that you get the correct version, as the 32 and 64 bit versions are not compatible.
- Make the .ko file
First, make a temporary directory
... and place the downloaded package into it (hybrid-portsrc-_64_5_10_27_6.tar.gz, or hybrid-portsrc-x86_32_5_10_27_6.tar.gz for the 32 bit version)Code:mkdir wdriver
Then 'cd' into the temporary directory and un-tar the file.
Now, we want to make the wl.ko file, so we enter:Code:cd wdriver tar -xzf hybrid-portsrc-x86_64_5_10_27_6.tar.gz
(<2.6.xx.xx> is your kernel version: mine was "2.6.24-19-generic". Use tab-completion to find yours.)
You should now have a file "wl.ko" located in the temporary directory you created (wdriver).Code:make -C /lib/modules/<2.6.xx.xx>/build M=`pwd` clean make -C /lib/modules/<2.6.xx.xx>/build M=`pwd`
- Make sure that no other wireless drivers are installed
Enter: (Don't worry if there are any errors returned)
I also uninstalled ndiswrapper, just to be sure:Code:sudo rmmod bcm43xx sudo rmmod b43 sudo rmmod b43legacy
Code:sudo rmmod ndiswrapper sudo apt-get remove ndiswrapper-common
- Test the new wireless driver
Now, lets test out our new wireless driver. Enter:
If it worked, and you can see/connect to wireless networks, you'll want to:Code:sudo modprobe ieee80211_crypt_tkip sudo insmod wl.ko
- Make your changes permanent.
First, you may want to blacklist the old b43/b43legacy/bcm43xx drivers. Enter:
and add the following to the end of the file:Code:sudo gedit /etc/modprobe.d/blacklist
Now, let's move the wireless driver somewhere more permenant:Code:blacklist b43 blacklist b43legacy blacklist bcm43xx
Now, lets make it so that the driver and wireless encryption module are loaded on startup. Enter:Code:sudo mkdir /lib/modules/<2.6.xx.xx>/wlan sudo mv wl.ko /lib/modules/<2.6.xx.xx>/wlan
and addCode:sudo gedit /etc/modules
to the bottom.Code:ieee80211_crypt_tkip
and addCode:sudo gedit /etc/rc.local
at the end of the file, but before the line "exit 0"Code:sudo insmod /lib/modules/<2.6.xx.xx>/wlan/wl.ko
That's it. If I've made any errors, please let me know. Thanks.