Bug #1299

iwi0: fatal error" on boot

Added by Johannes.Hofmann about 5 years ago. Updated almost 5 years ago.

Status:ClosedStart date:
Priority:NormalDue date:
Assignee:-% Done:

0%

Category:-
Target version:-

Description

Hi,

I'm using the iwi driver with wpa successfully on my Thinkpad T42p for
quite while now with WPA enabled.
During but I'm always seeing:

iwi0: fatal error
iwi0: wake firmware monitor
iwi0: reset firmware

And then things work fine. Is this expected?
Also in some cases (about 1 of 50 boots) the iwi0 device seems to
hang (no network traffic going through. A reboot helps.

All this is not urgent of course, but I thought I should mention it.
Are there any plans to update the iwi driver? I could try to help.

Cheers,
Johannes

History

#1 Updated by Johannes.Hofmann about 5 years ago

^-- "boot" not "but" you probabely guessed that already :)
>
> iwi0: fatal error
> iwi0: wake firmware monitor
> iwi0: reset firmware
>
> And then things work fine. Is this expected?
> Also in some cases (about 1 of 50 boots) the iwi0 device seems to
> hang (no network traffic going through. A reboot helps.
>
> All this is not urgent of course, but I thought I should mention it.
> Are there any plans to update the iwi driver? I could try to help.
>
> Cheers,
> Johannes

#2 Updated by sepherosa about 5 years ago

On Fri, Feb 27, 2009 at 10:18 PM, Johannes Hofmann
<> wrote:
> Hi,
>
> I'm using the iwi driver with wpa successfully on my Thinkpad T42p for
> quite while now with WPA enabled.
> During but I'm always seeing:
>
> iwi0: fatal error
> iwi0: wake firmware monitor
> iwi0: reset firmware
>
> And then things work fine. Is this expected?
> Also in some cases (about 1 of 50 boots) the iwi0 device seems to
> hang (no network traffic going through. A reboot helps.
>
> All this is not urgent of course, but I thought I should mention it.
> Are there any plans to update the iwi driver? I could try to help.

I wanted to rewrite it for a long time, but never find enough time
after I whacked ipw(4) :P
Would you be interested? :)

Best Regards,
sephe

#3 Updated by Johannes.Hofmann about 5 years ago

Interested yes, but it seems that you have rewritten iwl from scratch.
I could try to port something over from another BSD, but a complete
rewrite is a bit too much for me I guess :)

Best Regards,
Johannes

#4 Updated by sepherosa about 5 years ago

On Sat, Feb 28, 2009 at 4:46 PM, Johannes Hofmann
<> wrote:
> Sepherosa Ziehau <> wrote:
>> On Fri, Feb 27, 2009 at 10:18 PM, Johannes Hofmann
>> <> wrote:
>>> Hi,
>>>
>>> I'm using the iwi driver with wpa successfully on my Thinkpad T42p for
>>> quite while now with WPA enabled.
>>> During but I'm always seeing:
>>>
>>> iwi0: fatal error
>>> iwi0: wake firmware monitor
>>> iwi0: reset firmware
>>>
>>> And then things work fine. Is this expected?
>>> Also in some cases (about 1 of 50 boots) the iwi0 device seems to
>>> hang (no network traffic going through. A reboot helps.
>>>
>>> All this is not urgent of course, but I thought I should mention it.
>>> Are there any plans to update the iwi driver? I could try to help.
>>
>> I wanted to rewrite it for a long time, but never find enough time
>> after I whacked ipw(4) :P
>> Would you be interested? :)
>
> Interested yes, but it seems that you have rewritten iwl from scratch.
> I could try to port something over from another BSD, but a complete
> rewrite is a bit too much for me I guess :)

OK :). You could take a look at FreeBSD's iwi. They did a great job
to improve the driver's state.

Best Regards,
sephe

#5 Updated by Johannes.Hofmann about 5 years ago

I converted iwi to use the firmware(9) API and adapted it to the
layout of newer firmware versions in the hope that this would fix the
problem:
http://leaf.dragonflybsd.org/~hofmann/iwi_firmware.diff

Unfortunately even with ipw2200-fw-3.0 I get the same error when
starting wpa_supplicant.
But I noticed that setting ap_scan from 1 to 0 makes the issue go
away.

Anyway, I think the firmware(9) conversion and update to newer firmware
version is generally a good thing as it would allow to nuke iwicontrol.
To test you need to put the firmware files from
http://ipw2200.sourceforge.net/firmware.php?fid=7
in a directory /etc/firmware/iwi/2200/3.0/

In the current form it only supports firmware version 3.0 and higher.
Do we need compatibility code for older firmware versions?

Cheers,
Johannes

PS: It is not yet using the generic dma stuff from firmware(9) as I
did not know what to use as parent_tag. Any ideas?

#6 Updated by sepherosa about 5 years ago

On Mon, Mar 2, 2009 at 6:20 AM, Johannes Hofmann
<> wrote:
> Sepherosa Ziehau <> wrote:
>> On Sat, Feb 28, 2009 at 4:46 PM, Johannes Hofmann
>> <> wrote:
>>> Sepherosa Ziehau <> wrote:
>>>> On Fri, Feb 27, 2009 at 10:18 PM, Johannes Hofmann
>>>> <> wrote:
>>>>> Hi,
>>>>>
>>>>> I'm using the iwi driver with wpa successfully on my Thinkpad T42p for
>>>>> quite while now with WPA enabled.
>>>>> During but I'm always seeing:
>>>>>
>>>>> iwi0: fatal error
>>>>> iwi0: wake firmware monitor
>>>>> iwi0: reset firmware
>>>>>
>>>>> And then things work fine. Is this expected?
>>>>> Also in some cases (about 1 of 50 boots) the iwi0 device seems to
>>>>> hang (no network traffic going through. A reboot helps.
>>>>>
>>>>> All this is not urgent of course, but I thought I should mention it.
>>>>> Are there any plans to update the iwi driver? I could try to help.
>>>>
>>>> I wanted to rewrite it for a long time, but never find enough time
>>>> after I whacked ipw(4) :P
>>>> Would you be interested? :)
>>>
>>> Interested yes, but it seems that you have rewritten iwl from scratch.
>>> I could try to port something over from another BSD, but a complete
>>> rewrite is a bit too much for me I guess :)
>>
>> OK :). You could take a look at FreeBSD's iwi. They did a great job
>> to improve the driver's state.
>>
>
> I converted iwi to use the firmware(9) API and adapted it to the
> layout of newer firmware versions in the hope that this would fix the
> problem:
> http://leaf.dragonflybsd.org/~hofmann/iwi_firmware.diff

Cool, I will commit it tomorrow.

Intel's firmware is always oversmart. I think this error is kinda
bogus, maybe you could consider removing the loud warning :)

Nope, I don't think we need to add compat code.

parent_tag should be a child busdma tag of driver's top level busdma
tag (iwi does not have a top level busdma tag). Driver's top level
busdma tag usually puts limit on the lowaddr, while its children
usually put limits on alignment and/or boundary. I plan to rearrange
firmware(9)'s busdma related bits, so we will not need to create a
busdma tag just to inherit alignment/boundary parameters.

Best Regards,
sephe

#7 Updated by sepherosa about 5 years ago

On Mon, Mar 2, 2009 at 6:20 AM, Johannes Hofmann
<> wrote:
> Sepherosa Ziehau <> wrote:
>> On Sat, Feb 28, 2009 at 4:46 PM, Johannes Hofmann
>> <> wrote:
>>> Sepherosa Ziehau <> wrote:
>>>> On Fri, Feb 27, 2009 at 10:18 PM, Johannes Hofmann
>>>> <> wrote:
>>>>> Hi,
>>>>>
>>>>> I'm using the iwi driver with wpa successfully on my Thinkpad T42p for
>>>>> quite while now with WPA enabled.
>>>>> During but I'm always seeing:
>>>>>
>>>>> iwi0: fatal error
>>>>> iwi0: wake firmware monitor
>>>>> iwi0: reset firmware
>>>>>
>>>>> And then things work fine. Is this expected?
>>>>> Also in some cases (about 1 of 50 boots) the iwi0 device seems to
>>>>> hang (no network traffic going through. A reboot helps.
>>>>>
>>>>> All this is not urgent of course, but I thought I should mention it.
>>>>> Are there any plans to update the iwi driver? I could try to help.
>>>>
>>>> I wanted to rewrite it for a long time, but never find enough time
>>>> after I whacked ipw(4) :P
>>>> Would you be interested? :)
>>>
>>> Interested yes, but it seems that you have rewritten iwl from scratch.
>>> I could try to port something over from another BSD, but a complete
>>> rewrite is a bit too much for me I guess :)
>>
>> OK :). You could take a look at FreeBSD's iwi. They did a great job
>> to improve the driver's state.
>>
>
> I converted iwi to use the firmware(9) API and adapted it to the
> layout of newer firmware versions in the hope that this would fix the
> problem:
> http://leaf.dragonflybsd.org/~hofmann/iwi_firmware.diff

Thank you!

Committed:
114b4cbc1ec44562d67779db3dad73467fd291f9

Best Regards,
sephe

#8 Updated by Johannes.Hofmann about 5 years ago

Cool! Here is a small update to the iwi man page (taken from iwl(4)).
Not sure whether, when, and how we should remove iwicontrol.

Regards,
Johannes

diff --git a/share/man/man4/iwi.4 b/share/man/man4/iwi.4
index c21a26f..765203d 100644
--- a/share/man/man4/iwi.4
+++ b/share/man/man4/iwi.4
@@ -51,13 +51,20 @@ By default, the
driver configures the adapter for BSS operation (aka infrastructure mode).
This mode requires the use of an access point.
.Pp
-In addition IBSS operation (aka adhoc mode) is also supported. This mode requires
-special ibss firmware. See
-.Xr iwicontrol 8
-for more details on how to load firmware.
-.Pp
For more (general) information on configuring this device, see
.Xr ifconfig 8 .
+.Sh FILES
+The firmware for the adapter is not shipped with
+.Dx
+and must be obtained separately.
+An archive with firmware files that are known to work can be found at:
+.Bd -literal -offset indent
+http://ipw2200.sourceforge.net/firmware.php?fid=7
+.Ed
+.Pp
+The firmware files have to reside in
+.Pa /etc/firmware/iwi/2200/3.0
+and will be loaded when the interface is brought up.
.Sh EXAMPLES
Refer to the
.Sx EXAMPLES
@@ -81,7 +88,6 @@ The driver will reset the hardware. This should not happen.
.Xr wi 4 ,
.Xr wlan 4 ,
.Xr ifconfig 8 ,
-.Xr iwicontrol 8 ,
.Xr wpa_supplicant 8
.Sh AUTHORS
.An -nosplit

#9 Updated by sepherosa about 5 years ago

On Tue, Mar 3, 2009 at 7:15 PM, Johannes Hofmann
<> wrote:
>>> I converted iwi to use the firmware(9) API and adapted it to the
>>> layout of newer firmware versions in the hope that this would fix the
>>> problem:
>>> http://leaf.dragonflybsd.org/~hofmann/iwi_firmware.diff
>>
>> Thank you!
>>
>> Committed:
>> 114b4cbc1ec44562d67779db3dad73467fd291f9
>
> Cool! Here is a small update to the iwi man page (taken from iwl(4)).
> Not sure whether, when, and how we should remove iwicontrol.

I just committed a manpage update before I got you mail :). Anyway,
thank you for your patch :)

Best Regards,
sephe

#10 Updated by sepherosa almost 5 years ago

committed 114b4cbc1ec44562d67779db3dad73467fd291f9

Also available in: Atom PDF