"iwi0: fatal error" on boot

Johannes Hofmann johannes.hofmann at gmx.de
Sun Mar 1 14:20:18 PST 2009


Sepherosa Ziehau <sepherosa at gmail.com> wrote:
> On Sat, Feb 28, 2009 at 4:46 PM, Johannes Hofmann
> <johannes.hofmann at gmx.de> wrote:
>> Sepherosa Ziehau <sepherosa at gmail.com> wrote:
>>> On Fri, Feb 27, 2009 at 10:18 PM, Johannes Hofmann
>>> <johannes.hofmann at gmx.de> 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

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?





More information about the Bugs mailing list