Bug 1650 - Wireless card won't work at all: Microcode SW Error detected
: Wireless card won't work at all: Microcode SW Error detected
Status: VERIFIED FIXED
: iwlwifi
firmware error
: unspecified
: All Fedora Core 8
: P2 major
Assigned To:
:
:
:
:
:
  Show dependency treegraph
 
Reported: 2008-04-12 10:20 by
Modified: 2009-07-22 20:17 (History)


Attachments
System info with iwl3945 debugging logs (13.54 KB, application/x-compressed-tar)
2008-04-12 23:27, Tom Söderlund
Details
debug log (282.33 KB, text/plain)
2008-04-18 07:32, Sam Morris
Details
Do not scan zero channels (644 bytes, patch)
2008-10-29 10:36, reinette chatre
Details | Diff


Note

You need to log in before you can comment on or make changes to this bug.


Description From 2008-04-12 10:20:22
The wireless card in my Samsung Q45 laptop won't work at all.

02:00.0 Network Controller [0280]: Intel Corporation PRO/Wireless 3945ABG
Network Connection [8086:4222] (rev 02)

The kernel prints the following messages during bootup:

iwl3945: Microcode SW error detected.  Restarting 0x82000008.
iwl3945: Error Reply type 0x00000005 cmd REPLY_SCAN_CMD (0x80) seq 0x4412 ser
0x0000004B
iwl3945: Can't stop Rx DMA.
------- Comment #1 From 2008-04-12 10:20:48 -------
Sorry, I forgot to mention that I have tried Linux 2.6.24.3 and 2.6.15-rc8
without any luck.
------- Comment #2 From 2008-04-12 23:10:02 -------
Same problem here, but only with iwl drivers in the latest linux kernels and
with latest compat-drivers. Ipw driver with kernel 2.6.23.11 worked quite well
as well as vanilla driver and kernel from Ubuntu Gutsy 7.10. Vista has no
problems with the card. This is Lenovo Y200 6469-22R laptop with Intel
PRO/Wireless 3945(A)BG in it.
------- Comment #3 From 2008-04-12 23:27:22 -------
Created an attachment (id=1412) [details]
System info with iwl3945 debugging logs

In Lenovo Y200 6469-22R running Ubuntu Gutsy as a base and manually compiled
2.6.25-rc9 kernel with manually compiled compat-wireless-2008-04-08 drivers,
loading the iwl3945 driver with default settings usually yields to the
Microcode SW Error, but not always.

When there is no Microcode SW Error, iwlist eth1 scan produces "No scan
results" even when there is an AP around that is heard by IPW driver with older
kernel (2.6.23.11). At some point iwlist eth1 scan jams and then there is the
Microcode SW Error in kern.log.

The attachment shows the situation when the Microcode SW Error happens during
loading the iwl3945 module.
------- Comment #4 From 2008-04-14 09:56:52 -------
Ben, 

In both cases the Microcode code error seems to be related to scanning. Could
you please take a look?
------- Comment #5 From 2008-04-18 07:32:50 -------
Created an attachment (id=1414) [details]
debug log

When tring 2.6.25 I noticed the CONFIG_IWL3945_DEBUG option... after enabling
it I was able to get the attached log.
------- Comment #6 From 2008-04-20 01:00:59 -------
Still same problem with plain 2.6.25-git2 drivers as well as 2.6.25-git2 /w
compat-2008-04-20 drivers.
------- Comment #7 From 2008-04-24 09:52:09 -------
Still similar problems with plain 2.6.25-git4 drivers (Microcode error usually
on loading the module) as well as 2.6.25-git4 /w compat-2008-04-23 drivers
(Microcode error less usual but scan results with "No scan results" in a
network setup where IPW drivers with 2.6.23.11 can hear APs).
------- Comment #8 From 2008-04-25 01:43:48 -------
A workaround is to load the iwl3945 module with the parameter
disable_hw_scan=1. However I still can't connect to my access point (using
64-bit WEP encryption)... "WEP decrypt failed (ICV)" shows up a few times in
the kernel's messages before NetworkManager gives up and prompts me for another
passphrase.
------- Comment #9 From 2008-04-25 11:03:33 -------
disable_hw_scan=1 helps here too. Writing this using 2.6.25-git7 with
compat-wireless-2008-04-25 drivers. So far no problems.
------- Comment #10 From 2008-04-26 07:53:20 -------
(In reply to comment #8)
> However I still can't connect to my access point (using
> 64-bit WEP encryption)... "WEP decrypt failed (ICV)" shows up a few times in
> the kernel's messages before NetworkManager gives up and prompts me for another
> passphrase.
> 

Ignore this, I didn't notice that NM was prompting me for a 128-bit WEP key. So
after I use the disable_hw_scan option, the driver works perfectly!
------- Comment #11 From 2008-04-26 08:10:18 -------
Got even the led working actively. The only problem now is that after boot I
need to rmmod iwl3945 once and modprobe once before the network actually works.
This might be a problem with NetworkManager too. Anyway it is another problem
and does not belong here anymore since there is no more Microcode error in the
logs. Thanks  Sam for the hint about the disable_hw_scan=1 option. I had tried
it before (several weeks ago) and it didn't help then but now it does.
------- Comment #12 From 2008-06-03 08:07:02 -------
Still present in 2.6.26-rc6.
------- Comment #13 From 2008-06-05 06:26:51 -------
(In reply to comment #12)
> Still present in 2.6.26-rc6.
> 

Oops, I mean 2.6.26-rc4.
------- Comment #14 From 2008-10-29 10:36:43 -------
Created an attachment (id=1640) [details]
Do not scan zero channels

Please try the attached patch
------- Comment #15 From 2008-10-29 10:39:59 -------
(In reply to comment #14)
> Created an attachment (id=1640) [details] [details]
> Do not scan zero channels
> 
> Please try the attached patch
> 

The patch should take care of the Microcode error you see. If your wireless
still does not work, please try compiling the driver with
CONFIG_WIRELESS_OLD_REGULATORY

If this makes your wireless work - could you please send us the log of your
driver with and without CONFIG_WIRELESS_OLD_REGULATORY?
------- Comment #16 From 2008-10-29 10:41:52 -------
*** Bug 1803 has been marked as a duplicate of this bug. ***
------- Comment #17 From 2008-11-14 20:13:16 -------
(In reply to comment #14)
> Created an attachment (id=1640) [details] [details]
> Do not scan zero channels
> 
> Please try the attached patch
> 

This patch has now been included in 2.6.28. Has everybody been able to test it?
The duplicate bug at http://bugzilla.kernel.org/show_bug.cgi?id=11806 has been
closed. Can we close this bug also?
------- Comment #18 From 2008-11-15 03:42:04 -------
Since upgrading to Ubuntu intrepid the problem has not occurred anymore even
without additional settings in module loading options. Currently intrepid uses
2.6.27 kernel with Ubuntu specific additional fixes.
------- Comment #19 From 2008-11-16 17:27:33 -------
Mark as Verified according to last comment
------- Comment #20 From 2009-02-09 08:40:59 -------
Ubuntu intrepid 8.10
2.6.27-11-generic #1 SMP Thu Jan 29 19:24:39 UTC 2009 i686 GNU/Linux

iwl3945 suddenly just stopped working with the same error messages:


Feb 9 18:03:00 oleksiy-laptop kernel: [ 40.415759] iwl3945: Microcode SW error
detected. Restarting 0x82000008.
Feb 9 18:03:00 oleksiy-laptop kernel: [ 40.415791] iwl3945: Error Reply type
0x00000005 cmd REPLY_RXON (0x10) seq 0x0402 ser 0x0000004B
Feb 9 18:03:00 oleksiy-laptop kernel: [ 40.415828] iwl3945: Error setting Tx
power (-5).
Feb 9 18:03:00 oleksiy-laptop kernel: [ 40.912173] iwl3945: Error sending
REPLY_TX_PWR_TABLE_CMD: time out after 500ms.
Feb 9 18:03:00 oleksiy-laptop kernel: [ 40.914749] Registered led device:
iwl-phy0:radio
Feb 9 18:03:00 oleksiy-laptop kernel: [ 40.917862] Registered led device:
iwl-phy0:assoc
Feb 9 18:03:00 oleksiy-laptop kernel: [ 40.918928] Registered led device:
iwl-phy0:RX
Feb 9 18:03:00 oleksiy-laptop kernel: [ 40.919900] Registered led device:
iwl-phy0:TX
Feb 9 18:03:01 oleksiy-laptop kernel: [ 40.925013] iwl3945: Can't stop Rx DMA.
Feb 9 18:03:02 oleksiy-laptop kernel: [ 42.270654] iwl3945: Microcode SW error
detected. Restarting 0x82000008.
Feb 9 18:03:02 oleksiy-laptop kernel: [ 42.270679] iwl3945: Error Reply type
0x00000005 cmd REPLY_RXON (0x10) seq 0x0402 ser 0x0000004B
Feb 9 18:03:02 oleksiy-laptop kernel: [ 42.270701] iwl3945: Error setting Tx
power (-5).
Feb 9 18:03:02 oleksiy-laptop kernel: [ 42.272864] Registered led device:
iwl-phy0:radio
Feb 9 18:03:02 oleksiy-laptop kernel: [ 42.272922] Registered led device:
iwl-phy0:assoc
Feb 9 18:03:02 oleksiy-laptop kernel: [ 42.272963] Registered led device:
iwl-phy0:RX
Feb 9 18:03:02 oleksiy-laptop kernel: [ 42.273020] Registered led device:
iwl-phy0:TX
Feb 9 18:03:02 oleksiy-laptop kernel: [ 42.277009] iwl3945: Can't stop Rx DMA.
Feb 9 18:03:02 oleksiy-laptop kernel: [ 43.376563] iwl3945: request scan called
when driver not ready.
Feb 9 18:03:02 oleksiy-laptop kernel: [ 43.381228] wlan0: failed to restore
operational channel after scan
Feb 9 18:03:03 oleksiy-laptop kernel: [ 43.880108] iwl3945: Error sending
REPLY_TX_PWR_TABLE_CMD: time out after 500ms.
Feb 9 18:03:04 oleksiy-laptop kernel: [ 43.885062] iwl3945: Microcode SW error
detected. Restarting 0x82000008.


Provided solution (disable_hardware_scan) doesn't help.
------- Comment #21 From 2009-02-09 15:34:49 -------
Could you please try the latest code?
------- Comment #22 From 2009-02-10 06:46:06 -------
Unfortunately I can't test it :( It's working again since morning! I've not
updated any configs or packages. I guess the problematic wireless network has
gone away. 
------- Comment #23 From 2009-02-10 19:12:48 -------
OK. Close it.
------- Comment #24 From 2009-02-10 23:30:32 -------
(In reply to comment #23)
> OK. Close it.
> 

It's not working again. Same errors. Going to try latest patch.
------- Comment #25 From 2009-02-11 02:12:45 -------
Patch applied. Working fine so far.
------- Comment #26 From 2009-03-31 05:21:18 -------
2.6.28-11-generic #38-Ubuntu SMP Fri Mar 27 09:00:52 UTC 2009 i686 GNU/Linux

Same error again. This is Ubuntu 9.04 beta

kernel: [  153.555809] iwl3945: Microcode SW error detected.  Restarting
0x82000008.
kernel: [  153.555830] iwl3945: Error Reply type 0x00000005 cmd
REPLY_TX_PWR_TABLE_CMD (0x97) seq 0x0403 ser 0x0000004B
kernel: [  154.053055] iwl3945: Error sending REPLY_RATE_SCALE: time out after
500ms.
kernel: [  154.053060] iwl3945: Error setting HW rate table: FFFFFF92
kernel: [  154.053115] Registered led device: iwl-phy0:radio
kernel: [  154.053136] Registered led device: iwl-phy0:assoc
kernel: [  154.053154] Registered led device: iwl-phy0:RX
kernel: [  154.053171] Registered led device: iwl-phy0:TX
kernel: [  154.055047] iwl3945: Can't stop Rx DMA.

Do we need to manually apply this patch for every new kernel?
------- Comment #27 From 2009-04-10 03:45:46 -------
Ubuntu 9.04 Beta:

2.6.28-11-generic #41-Ubuntu SMP Wed Apr 8 04:38:53 UTC 2009 i686 GNU/Linux

Exactly the same error:

Apr 10 13:42:29 oleksiy-laptop kernel: [ 5891.062103] iwl3945: Microcode SW
error detected. Restarting 0x82000008.
Apr 10 13:42:29 oleksiy-laptop kernel: [ 5891.062134] iwl3945: Error Reply type
0x00000005 cmd REPLY_RATE_SCALE (0x47) seq 0x0405 ser 0x0000004B
Apr 10 13:42:29 oleksiy-laptop kernel: [ 5891.062180] iwl3945: Error setting HW
rate table: FFFFFFFB
Apr 10 13:42:29 oleksiy-laptop kernel: [ 5891.560191] iwl3945: Error sending
REPLY_TX_PWR_TABLE_CMD: time out after 500ms.
------- Comment #28 From 2009-04-17 02:35:54 -------
I've started to get the same bug when I've tested latest kernel 2.6.30-rc1/-rc2
It makes this kernel unsable with Wifi driver.

I do not see such error with 2.6.29 kernel and same microcode - so it must be a
result from the latest merged iwl patches - I hope I do not need to make
bisect.


Zdenek

My hw:  T61, 4GB, C2D, Fedora Rawhide.

NetworkManager: <info>  (wlan0): bringing up device.
kernel: [   27.768098] ADDRCONF(NETDEV_UP): eth0: link is not ready
kernel: [   27.769565] iwl3945 0000:03:00.0: firmware: requesting
iwlwifi-3945-2.ucode
kernel: [   27.871108] iwl3945 0000:03:00.0: loaded firmware version 15.28.2.8
NetworkManager: <info>  (wlan0): preparing device.
NetworkManager: <info>  (wlan0): deactivating device (reason: 2).
NetworkManager: <info>  (wlan0): device state change: 2 -> 3
kernel: [   27.929317] ADDRCONF(NETDEV_UP): wlan0: link is not ready
NetworkManager: <info>  (wlan0): supplicant interface state:  starting -> ready
kernel: [   30.908119] iwl3945 0000:03:00.0: Microcode SW error detected.
Restarting 0x82000008.
kernel: [   30.908206] iwl3945 0000:03:00.0: Error Reply type 0x00000005 cmd
REPLY_PHY_CALIBRATION_CMD (0xB0) seq 0x013A ser 0x004E0000
kernel: [   33.820074] audit(1239550371.241:18067): audit_enabled=0 old=1
auid=4294967295 ses=4294967295 res=1
auditd[3711]: Started dispatcher: /sbin/audispd pid: 3713
audispd: af_unix plugin initialized
audispd: audispd initialized with q_depth=80 and 2 active plugins
auditd[3711]: Init complete, auditd 1.7.12 listening for events (startup state
enable)
kernel: [   49.073377] iwl3945 0000:03:00.0: Error sending REPLY_SCAN_CMD: time
out after 500ms.
kernel: [   49.573394] iwl3945 0000:03:00.0: Error sending
REPLY_TX_PWR_TABLE_CMD: time out after 500ms.
gnome-session[4693]: WARNING: Unable to find provider 'nautilus-q' of required
component 'filemanager'
kernel: [   79.073376] iwl3945 0000:03:00.0: Error sending REPLY_SCAN_CMD: time
out after 500ms.
kernel: [   79.573368] iwl3945 0000:03:00.0: Error sending
REPLY_TX_PWR_TABLE_CMD: time out after 500ms.
pulseaudio[4906]: main.c: Called SUID root and real-time and/or high-priority
scheduling was requested in the configuration. However, we lack the necessary
privileges:
pulseaudio[4906]: main.c: We are not in group 'pulse-rt', PolicyKit refuse to
grant us the requested privileges and we have no increase
RLIMIT_NICE/RLIMIT_RTPRIO resource limits.
pulseaudio[4906]: main.c: For enabling real-time/high-priority scheduling
please acquire the appropriate PolicyKit privileges, or become a member of
'pulse-rt', or increase the RLIMIT_NICE/RLIMIT_RTPRIO resource limits for this
user.
pulseaudio[4919]: pid.c: Stale PID file, overwriting.
pulseaudio[4919]: module-volume-restore.c: module-volume-restore is obsolete.
It has been replaced by module-stream-restore. We will now load the latter but
please make sure to remove module-volume-restore from your configuration.
kernel: [   82.218565] fuse init (API version 7.11)
pulseaudio[5133]: pid.c: Daemon already running.
gnome-keyring-daemon[5277]: couldn't set environment variable in session:
Setenv interface is only available during the Initialization phase
NetworkManager: <info>  Activation (wlan0) starting connection 'travniky76'
NetworkManager: <info>  (wlan0): device state change: 3 -> 4
NetworkManager: <info>  Activation (wlan0) Stage 1 of 5 (Device Prepare)
scheduled...
NetworkManager: <info>  Activation (wlan0) Stage 1 of 5 (Device Prepare)
started...
NetworkManager: <info>  Activation (wlan0) Stage 2 of 5 (Device Configure)
scheduled...
NetworkManager: <info>  Activation (wlan0) Stage 1 of 5 (Device Prepare)
complete.
NetworkManager: <info>  Activation (wlan0) Stage 2 of 5 (Device Configure)
starting...
NetworkManager: <info>  (wlan0): device state change: 4 -> 5
NetworkManager: <info>  Activation (wlan0/wireless): connection 'travniky76'
requires no security.  No secrets needed.
NetworkManager: <info>  Config: added 'ssid' value 'travniky76'
NetworkManager: <info>  Config: added 'scan_ssid' value '1'
NetworkManager: <info>  Config: added 'key_mgmt' value 'NONE'
NetworkManager: <info>  Activation (wlan0) Stage 2 of 5 (Device Configure)
complete.
NetworkManager: <info>  Config: set interface ap_scan to 1
NetworkManager: <info>  (wlan0): supplicant connection state:  inactive ->
scanning
kernel: [   93.033359] iwl3945 0000:03:00.0: Error sending REPLY_SCAN_CMD: time
out after 500ms.
kernel: [   93.533342] iwl3945 0000:03:00.0: Error sending
REPLY_TX_PWR_TABLE_CMD: time out after 500ms.
kernel: [   98.533374] iwl3945 0000:03:00.0: Error sending REPLY_SCAN_CMD: time
out after 500ms.
kernel: [   99.033364] iwl3945 0000:03:00.0: Error sending
REPLY_TX_PWR_TABLE_CMD: time out after 500ms.
kernel: [  104.033368] iwl3945 0000:03:00.0: Error sending REPLY_SCAN_CMD: time
out after 500ms.
kernel: [  104.536700] iwl3945 0000:03:00.0: Error sending
REPLY_TX_PWR_TABLE_CMD: time out after 500ms.
kernel: [  109.536694] iwl3945 0000:03:00.0: Error sending REPLY_SCAN_CMD: time
out after 500ms.
kernel: [  110.036764] iwl3945 0000:03:00.0: Error sending
REPLY_TX_PWR_TABLE_CMD: time out after 500ms.
kernel: [  115.036694] iwl3945 0000:03:00.0: Error sending REPLY_SCAN_CMD: time
out after 500ms.
kernel: [  115.547575] iwl3945 0000:03:00.0: Error sending
REPLY_TX_PWR_TABLE_CMD: time out after 500ms.
NetworkManager: <info>  Activation (wlan0/wireless): association took too long,
failing activation.
NetworkManager: <info>  (wlan0): device state change: 5 -> 9
NetworkManager: <info>  Activation (wlan0) failed for access point (travniky76)
NetworkManager: <info>  Marking connection 'travniky76' invalid.
NetworkManager: <info>  Activation (wlan0) failed.
NetworkManager: <info>  (wlan0): device state change: 9 -> 3
NetworkManager: <info>  (wlan0): deactivating device (reason: 0).
------- Comment #29 From 2009-06-28 02:30:44 -------
I got the same problem on the same laptop model as the original reporter
(Samsung Q45)

The OS is Ubuntu Jaunty (9.04), the kernel 2.6.28-13-generic.

The kernel messages are:
[   31.759063] iwl3945 0000:02:00.0: firmware: requesting iwlwifi-3945-1.ucode
[   31.813429] iwl3945: iwlwifi-3945-1.ucode firmware file req failed: Reason
-2
[   31.813434] iwl3945: Could not read microcode: -2
[   31.814806] iwl3945 0000:02:00.0: firmware: requesting iwlwifi-3945-1.ucode
[   31.818154] iwl3945: iwlwifi-3945-1.ucode firmware file req failed: Reason
-2
[   31.818159] iwl3945: Could not read microcode: -2

The funny thing is that this stopped working only a few days ago. There have
never been any problems on that machine before, since more than a year. Don't
remember if there has been some kernel update or not.
------- Comment #30 From 2009-06-28 02:58:08 -------
Reported this also at Launchpad: https://bugs.launchpad.net/bugs/185470
------- Comment #31 From 2009-06-29 09:07:55 -------
(In reply to comment #29)
> I got the same problem on the same laptop model as the original reporter
> (Samsung Q45)

It is not the same problem (see below).

> 
> The OS is Ubuntu Jaunty (9.04), the kernel 2.6.28-13-generic.
> 
> The kernel messages are:
> [   31.759063] iwl3945 0000:02:00.0: firmware: requesting iwlwifi-3945-1.ucode
> [   31.813429] iwl3945: iwlwifi-3945-1.ucode firmware file req failed: Reason
> -2
> [   31.813434] iwl3945: Could not read microcode: -2
> [   31.814806] iwl3945 0000:02:00.0: firmware: requesting iwlwifi-3945-1.ucode
> [   31.818154] iwl3945: iwlwifi-3945-1.ucode firmware file req failed: Reason
> -2
> [   31.818159] iwl3945: Could not read microcode: -2
> 
> The funny thing is that this stopped working only a few days ago. There have
> never been any problems on that machine before, since more than a year. Don't
> remember if there has been some kernel update or not.
> 

You are reporting an unrelated issue here. This is not the same problem for
what this bug was submitted. The issue you are seeing is a problem with your
environment. Error "-2" means "No such file or directory" If you want to
discuss it more, please open a new bug report.
------- Comment #32 From 2009-07-22 14:23:15 -------
It looks like Oleksiy (comment #27) and Zdenek (comment #28 and following) are
the only reporters still pending on this bug ... note that there are many, many
possible causes for Microcode errors ... I think the problem originally
reported was fixed and closed in comment #19, so I'm closing this bug.

We've issued new uCode:

http://www.intellinuxwireless.org/?n=Downloads

and there have been several updates to driver since your reports ... are you
still having problems?  If so, please follow tips at:

http://www.intellinuxwireless.org/?n=fw_error_report

to create a detailed uCode error log and open a *new* bug report.

Also, are you on a 64-bit platform?  Please let us know in the new bug report.

Thanks!

-- Ben --