Thinkpad T61
From Blue-IT.org Wiki
Wlan Problems
Ubuntu Lucid / 10.04.1 64bit
I encountered some problems with my wlan and had some strange errors in dmesg:
The first problem was:
iwl3945 0000:03:00.0: Failed to get channel info for channel 100 [0] iwl3945 0000:03:00.0: Failed to get channel info for channel 104 [0] iwl3945 0000:03:00.0: Failed to get channel info for channel 108 [0] iwl3945 0000:03:00.0: Failed to get channel info for channel 112 [0]
According to this opensuse bug i filed a solution in Ubuntu Bug #340418:
Add the following to a new file
vim /etc/modprobe.d/options-iwl3945.conf
and add
options iwl3945 disable_hw_scan=0
For testing purpose do
rmmod -f iwl3945 && modprobe iwl3945 disable_hw_scan=0
The second problem was:
cfg80211: Leaving channel 5170 MHz intact on phy2 - no rule found in band on Country IE cfg80211: Leaving channel 5180 MHz intact on phy2 - no rule found in band on Country IE cfg80211: Leaving channel 5190 MHz intact on phy2 - no rule found in band on Country IE
Look at dmesg like this:
dmesg | grep cfg | grep country
You'll see something like this
cfg80211: Calling CRDA for country: GB cfg80211: Received country IE:
To set the right country for your card (here GB) you have to install the program iw
sudo apt-get install iw
Then you can manually do
sudo iw reg set GB
and you'll see in dmesg:
cfg80211: Regulatory domain changed to country: GB
To automate this process you can write a so called dispatcher script for network manager (according to [1] and [2]):
vim /etc/NetworkManager/dispatcher.d/01changeCRDA
and add
#!/bin/sh INTERFACE=$1 ACTION=$2 CODE="GB" if [ "$ACTION" = "up" -a "$(echo $INTERFACE|grep wlan)" ];then iw reg set ${CODE} fi