Some people are having problems when they decided to update their Centrino driver using the latest version from IPW2200 website. They failed and they have to revert to the previous version. This article will try to help most users to upgrade their driver to the latest version. Please note that this article is not the primary solutions. You should check the official website to find about the latest changes being made.
First, you must understand that upgrading a module or driver is not a risk-free action. You should plan a backup plan in case the process failed just like some of my friends experiences when he tried to upgrade his driver. At least, you should have the backup for the previous version, so you can rollback to the previous driver if it fails.
Next, read the changelog or release notes and check the changes being made to the package (if it was too technical, just see the announcement, since sometimes it contains major changes). From that, you can decide whether you need to upgrade or stay with current version. Most user like i did like to use the most state of the art version, which has some risk also. The program may be buggy and sometimes it contains a new experimental feature that can cause the system became unstable. It's very unrecommended action when we are responsible for a system which is being used by many people (like a server). They need stability, not a rich but unstable system.
If you are using kernel 2.6.11.x, then i suggest that you keep using the current version of the module, since the new driver was released due to kernel bug (kernel BUG_ON panic caused by unexpected duplicate packets on 1.0.7 version of the driver) and also some new bug fixes. The latest version may not work with older version of kernel, so i suggest that you update your kernel version also, since the latest kernel version will also include some fixes for WLAN module. I used 2.6.13 from Slackware's repository as my primary kernel, and i upgrade my IPW2200 driver from 1.0.6 into 1.0.8.
First, grab the latest kernel version, and update your kernel version. Don't forget to install the kernel-source also if you are using binary packages, such as RPM or tgz. The kernel source will be needed by the driver to integrate it to the current kernel.
Note : Please use the same GCC (GNU C Compiler) that is being used to compile your kernel. I had an invalid module format when i tried to upgrade my IPW2200 driver using a different GCC version between the current GCC that i installed and GCC being used to compile my kernel.Next, grab the latest firmware, ieee subsystem, and also IPW2200 driver. Unpack those three packages using the same way as we did in our installation article. Step into the ieee subdirectory and type
. remove-old
Do the same thing on the ipw2200-1.0.8 sub directory. This will remove the previous version of the driver. After that, delete the old firmware also. Slide back into ieee subdirectory and type
make make install
It will build and install the ieee subsystem. Do the same thing with the ipw2200 subdirectory. Copy the firmware to the FIRMWARE_DIR and then type
. load
on the ipw2200 directory. It will unload your module and replace it with the new one. To check whether it works or not, type:
iwconfig
It should have an entry like:
eth0 radio off ESSID:off/any Nickname:"laptop"
Mode:Ad-Hoc Channel:0 Cell: 00:00:00:00:00:00
Bit Rate=0kb/s Tx-Power:off
Retry limit:7 RTS thr:off Fragment thr:off
Power Management:off
Link Quality:0 Signal level:0 Noise level:0
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:119 Missed beacon:0
Another way to check the process is by looking at the log files:
cat /var/log/syslog | grep ipw2200cat /var/log/messages | grep ipw2200dmesg | grep ipw2200Here is the output in my laptop:
Oct 27 20:31:53 laptop kernel: ipw2200: Intel(R) PRO/Wireless 2200/2915 Network Driver, 1.0.8
Oct 27 20:31:53 laptop kernel: ipw2200: Copyright(c) 2003-2004 Intel Corporation
Oct 27 20:31:53 laptop kernel: ipw2200: Detected Intel PRO/Wireless 2200BG Network Connection
It worked and i can start surfing again :)
If you are using vanilla kernel (Linus' official kernel) and are planning to upgrade your kernel to 2.6.17 or above, you will also need to upgrade your firmware to 3.0 and put it in the correct directory. (see the information in KernelNewbies in 2.6.17 section.) You will need this file as it has been patched in the Git repository.
Upgrade is not a risk-free process. Sometimes it may failed also, so make sure you have make a backup on your important files. I hope this article will help people to upgrade their centrino driver.
Last Update : 5 June 2006 :: 15:11:46
Comments