1. Download this file on this portal http://www.broadcom.com/support/802.11/linux_sta.php
2. And than build it.
1. Setup the directory by untarring the proper tarball:
For 32 bit: hybrid-v35-nodebug-pcoem-portsrc.tar.gz
For 64 bit: hybrid-v35_64-nodebug-pcoem-portsrc.tar.gz
# mkdir hybrid_wl
# cd hybrid_wl
# tar xzf <path>/hybrid-v35-nodebug-pcoem-portsrc.tar.gz or
2. Build the driver as a Linux loadable kernel module (LKM):
# make clean (optional)
When the build completes, it will produce a wl.ko file in the top level
If your driver does not build, check to make sure you have installed the
kernel package described in the requirements above.
This driver uses cfg80211 API. Code for Wext API is present and can be built
but we have dropped support for it.
As before, the Makefile will still build the matching version for your system.
# make API=CFG80211
# make API=WEXT (deprecated)
Upgrading from a previous version:
If you were already running a previous version of wl, you'll want to provide
a clean transition from the older driver. (The path to previous driver is
# rmmod wl
# mv <path-to-prev-driver>/wl.ko <path-to-prev-driver>/wl.ko.orig
# cp wl.ko <path-to-prev-driver>/wl.ko
# modprobe wl
The new wl driver should now be operational and your all done.
1: Remove any other drivers for the Broadcom wireless device.
There are several other drivers (besides this one) that can drive
Broadcom 802.11 chips. These include b43, brcmsmac, bcma and ssb. They will
conflict with this driver and need to be uninstalled before this driver
can be installed. Any previous revisions of the wl driver also need to
Note: On some systems such as Ubuntu 9.10, the ssb module may load during
boot even though it is blacklisted (see note under Common Issues on how to
resolve this. Nevertheless, ssb still must be removed
(by hand or script) before wl is loaded. The wl driver will not function
properly if ssb the module is loaded.
# lsmod | grep "brcmsmac\|b43\|ssb\|bcma\|wl"
If any of these are installed, remove them:
# rmmod b43
# rmmod brcmsmac
# rmmod ssb
# rmmod bcma
# rmmod wl
To blacklist these drivers and prevent them from loading in the future:
# echo "blacklist ssb" >> /etc/modprobe.d/blacklist.conf
# echo "blacklist bcma" >> /etc/modprobe.d/blacklist.conf
# echo "blacklist b43" >> /etc/modprobe.d/blacklist.conf
# echo "blacklist brcmsmac" >> /etc/modprobe.d/blacklist.conf
2: Insmod the driver.
Otherwise, if you have not previously installed a wl driver, you'll need
to add a security module before using the wl module. Most newer systems
use lib80211 while others use ieee80211_crypt_tkip. See which one works for
# modprobe lib80211
# modprobe ieee80211_crypt_tkip
If your using the cfg80211 version of the driver, then cfg80211 needs to be
# modprobe cfg80211
# insmod wl.ko
source : http://www.broadcom.com/support/802.11/linux_sta.php
Paper 4Share - Install Broadcom BCM4311 Wireless on Ubuntu