preload
Jan 20

Ubuntu 9.10 [code name : karmic koala ] has lot of bugs comparing previous releases and some of features have been removed in 9.10 version such as Login Screen GDM Manager . Hope Ubuntu community will fix everything soon in coming releases. Wireless connection is also not working in latest broadcom wifi hardware . Due to license problem Ubuntu does not include the broadcom wifi driver by default . User has to update manually using Ethernet internet connection after that they can activate driver in System -> Administration -> Hardware Drivers option. But the problem of this method is internet connection . What the user supposed to do if they do not have Ethernet internet connection. The solution is installing driver from source. Broadcom company providing wifi drivers for Linux . Steps are given here for how to do enable wifi driver using this method

  • Download the latest driver from Broadcom website

http://www.broadcom.com/support/802.11/linux_sta.php

These packages contain Broadcom's IEEE 802.11a/b/g/n hybrid Linux® device driver for use with Broadcom's BCM4311-,                      BCM4312-, BCM4321-, and BCM4322-based hardware.

  • Setup the directory by untarring the proper tarball:
For 32 bit: hybrid-portsrc.tar.gz
For 64 bit: hybrid-portsrc-x86_64.tar.gz
# mkdir hybrid_wl
# cd hybrid_wl
# tar xzf <path>/hybrid-portsrc.tar or <path>/hybrid-portsrc-x86_64.tar.gz
  • Build the driver as a Linux loadable kernel module (LKM):
# make clean   (optional)
# make
When the build completes, it will produce a wl.ko file in the top level directory.
  • Remove any other drivers for the Broadcom wireless.
There are several open source drivers that are used to drive Broadcom 802.11 chips such as b43 and ssb. If any of these are present they need to be removed before this driver can be installed.  Any previous revisions of the wl driver also need to be removed.
# lsmod  | grep "b43\|ssb\|wl"
If any of these are installed, remove them:
# rmmod b43
# rmmod ssb
# rmmod wl
To blacklist these drivers and prevent them from loading in the future:
# echo "blacklist ssb" >> /etc/modprobe.d/blacklist.conf
# echo "blacklist b43" >> /etc/modprobe.d/blacklist.conf
  • Insmod the driver.
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 usually /lib/modules/<kernel-  version>/kernel/net/wireless)
# 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
# depmod
# modprobe wl
Otherwise, if you have not previously installed a wl driver do this:
# modprobe lib80211
# insmod wl.ko
wl.ko is now operational.  It may take several seconds for the Network Manager to notice a new network driver has been installed and show the surrounding wireless networks.
Finally add these lines into /etc/profile file
#vim /etc/profile
rmmod ssb
modprobe lib80211
insmod <path-to-wl.ko-file >/wl.ko

Reference : Broadcom Website

Tagged with:
Jan 08

Compiling Linux Kernel is used for making your system as very customizable one . User can change kernel modules and device drivers based on their need . Suppose if i want to disable wireless support in my desktop PC [because wifi card is not available in my system] . i can recompile and disable that option in my existing kernel. In this article , the kernel compilation has been described in Six Easy Steps

1. Download the latest version of kernel from
http://kernel.org
The Latest kernel at the time of writing this  documentation
linux-2.6.32.3.tar.gz
or
linux-2.6.32.3.tar.gz
2. Unzip or Extract the archive file [Need Root Privileges ]
# su
# tar -xzvf linux-2.6.32.3.tar.gz -C /usr/src
or
# tar -xjvf linux-2.6.32.3.tar.bz2 -C /usr/src
3. Configure Modules and Drivers [Enable or Disable Drivers Here]
# make menuconfig   (for text mode)
or
# make xconfig      (for xwindow)
or
# make gconfig      (for GNOME – Recommended)
5. Compile Kernel [make command will take min 15 minutes to compile the kernel ]
# make
# make modules
# make modules_install
6. Install Kernel
# make install
Thats it. Now You can use new kernel in your favorite Linux flavors .