A couple of months ago I installed kubuntu 6.06 for the first time on my IBM A30 laptop as a dual boot. At that time, wireless was immediately recognized and worked with no effort on mly part. The wireless is built in on this laptop and is the Intersil Prism2.5 chipset, which enjoys very thorough support in Linux.
Last evening, bored, I decided to upgrade the 6.06 system to 7.04. This I did online using the package manager, which first required me to upgrade to 6.10 then to 7.04.
I did so. When upgrading to 6.10, the kernel was upgraded from 2.6.15 to 2.6.17. After I completed the upgrade to 6.10, I attempted to connect to the internet in order to continue the roll-forward to 7.04, but wireless didn't work.
So I rolled back to the 2.6.15 kernel, and wireless promptly came to life, and I rolled the system forward to 7.04.
With 7.04 and the 2.6.20 kernel, the wireless didn't work. In fact, the wireless interface wasn't even recognized as wireless. However, if I booted with the 2.6.15 kernel, wireless worked flawlessly.
Well, I googled for awhile, and studied everything I found, and finally worked it out.
As it happens, none of the information I found on the net gave me the proper solution; I only came up with that by analyzing all the pieces and sorting it out.
So here is how to get wireless working on an IBM with the Prism2.5 chipset using Kubuntu 7.04.
Basically, from kernel 2.6.17 on, there is a driver conflict with this wireless because there are no fewer than three drivers provided with the system which will work with this card, and the system is loading all three of them.
Further, network-manager is installed by default in (K)Ubuntu 7.04, and it levies its own driver requirements which aren't clearly called out. You have to get the right driver and only the right driver installed, or network-manager won't work, and worse, IT will interfere and prevent proper operation of the wireless.
The drivers are orinoco_pci (which is the one that was installed and working on 6.06), prism2_pci (which seems to have appeared in 2.6.17 and conflicts with orinoco) and hostap_pci (which is required by network-manager and is the driver you want).
To get the hostap_pci driver to be the one to control wireless, you have to edit the /etc/modprobe.d/blacklist file to blacklist the undesired drivers, which prevents them from loading.
If you are using gnome, enter this command to start an editor:
Code:
sudo gedit /etc/modprobe.d/blacklist
If kde then this:
Code:
sudo kedit /etc/modprobe.d/blacklist
Personally I use kate rather than kedit; it is your choice.
In the file that opens, enter these lines:
Code:
blacklist prism2_pci
blacklist orinoco_pci
Then save the file, close the editor, and reboot the computer.
When the system restarts, your wireless will be working, though you may need to configure it with WEP or WPA keys, network to connect to, and so forth.
Please note that hostap_pci will only work if network-manager is installed; if you don't install it and don't want it, then blacklist hostap_pci instead of blacklisting orinoco_pci and let orinoco_pci drive the wireless.