March 24, 2007 — You may have noticed that the Fedora kernel tends to get updated quite often. Grepping through the yum logs revealed no less than 8 updates since November 13th, 2006. So for those who have opted to use software that is not automatically updated every time the kernel is updated, it is important to remember to update these along with the kernel. So, here are the steps I take on these occasions.
As i have said in the past I really tried to co-exist with the bcm43xx drivers for the broadcom wireless card that is in this machine. However as stated there I don't think it is mature enough for the hardware. So I end up using the ndiswrapper driver which is quite stable and fulfills my needs. If you have been following along, you already know how to install the ndiswrapper driver from their site. You also have installed the windows driver that you need to make the wireless connection work. If you have not done this, then go to my wireless page and you can see how to install the driver. Now we are ready to run the updated kernel.
First of all, when a new kernel is installed by yum, you will need to get rid of the bcm43xx driver. I have noticed that
simply blacklisting the driver does not seem to work. In case you are wondering, there is a file called
mv /lib/modules/x.x.xx-x.xxx.fc6/kernel/drivers/net/wireless/bcm43xx/bcm43xx.ko\
/lib/modules/x.x.xx-x.xxx.fc6/kernel/drivers/net/wireless/bcm43xx/bcm43xx.old
Once you have done that, reboot your machine to activate the new kernel. Once you see the grub message, hit any
key to enter the grub menu. You will enter an interactive mode and you can use rudimentary command line
editing at this juncture to enter kernel parameters that affect how the system boots. Now select the topmost kernel (this would be the latest kernel installed by yum). Select the line that begins with kernel and add the number 1 at the
end of that line. This will instruct the boot process to boot as a single use system. Note that the
rmmod bcm43xx
Once you do that, you are ready to install the ndiswrapper driver. You can simply do that by heading to the directory where you have stored the source code and make and installed it
cd /home/downloads/ndiswrapper/ndiswrapper-x.xx/ #where x.xx is the version you are working with.
make clean & make install
That will install ndiswrapper for the current kernel. Once you do that you can load the driver and bring up your network.
modprobe ndiswrapper
ifup wlan0
This will put you on the network and the blue wireless light should light up indicating this. You can check this by executing the command
route -n
which should show you that following output:
Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 wlan0 169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 wlan0 0.0.0.0 192.168.1.1 0.0.0.0 UG 0 0 0 wlan0
Now that you are on the network, you will need to install the ATI drivers for your video card corresponding to the current kernel. It is important to do this in the order I am suggesting since you will need to be on the network to be able to get the tarfile from Michael Larabel's website. Michael is the maintainer of the ATI drivers and he has kindly made the patches needed to install the latest drivers on a system with a 2.6.20 or higher kernel.