Port-i386 archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Firmware Load Timeout on ipw




On Fri, 11 Feb 2022 at 01:36:58 -0500, Alexander Jacocks wrote:
> On my ThinkPad 240, running NetBSD 9.2, firmware load for my ipw-2100 wifi card times out:
> 
> # ifconfig ipw0 up
> [  89.1281844] ipw0: timeout waiting for firmware initialization to complete
> [  89.1281844] ipw0: could not load firmware
> [  89.1281844] ipw0: cannot assign link-local address
> 
> The firmware files are present, and I have set the required sysctl variable, to accept the license from Intel. The installation is a fresh one from the 9.2 release archives on local disk.
> 
> I can't find any other error messages, so I'm not sure exactly what is going on.

Hi,

On the surface, it would seem that there really is a timeout occurring.
The timeout threshold is one second, so it may be that it's taking
unexpectedly longer for some reason.

You could try the following patch, which bumps the timeout threshold to
five seconds.

--- src/sys/dev/pci/if_ipw.c.orig
+++ src/sys/dev/pci/if_ipw.c
@@ -1882,7 +1882,7 @@
 	    IPW_CTL_ALLOW_STANDBY);
 
 	/* wait at most one second for firmware initialization to complete */
-	if ((error = tsleep(sc, 0, "ipwinit", hz)) != 0) {
+	if ((error = tsleep(sc, 0, "ipwinit", 5 * hz)) != 0) {
 		aprint_error_dev(sc->sc_dev,
 		    "timeout waiting for firmware initialization "
 		    "to complete\n");

(I looked at the equivalent FreeBSD and OpenBSD code, and they also have
the timeout at one second.)

I don't have this hardware to test with; this is just something for you
to try, if you're inclined.

Regards,

Dave



Home | Main Index | Thread Index | Old Index