Subject: kern/23576: DWL-520 -- wi0: PCI reset timed out
To: None <>
From: None <>
List: netbsd-bugs
Date: 11/26/2003 13:47:34
>Number:         23576
>Category:       kern
>Synopsis:       DWL-520 --  wi0:  PCI reset timed out
>Confidential:   no
>Severity:       serious
>Priority:       high
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Wed Nov 26 13:48:00 UTC 2003
>Originator:     Michael Hertrick
>Release:        1.6ZF
Neovera, Inc.
NetBSD host 1.6ZF NetBSD 1.6ZF (host) #8: Wed Nov 26 07:54:14 EST 2003  user@host:/usr/source/src/sys/arch/i386/compile/host i386

DWL-520 <B> fails to attach because it's unable to reset.  The subsequent error messages I believe either result from this failure OR they are simply caused by the same "bug".

wi0 at pci0 dev 11 function 0: Intersil Prism2.5 Wireless Lan
wi0: interrupting at irq 5
wi0: PCI reset timed out
wi0:wi0: wi_cmd: busy bit won't clear.
wi0: wi_cmd: busy bit won't clear.
wi0: wi_cmd: busy bit won't clear.
wi0: wi_cmd: busy bit won't clear.
wi0: wi_cmd: busy bit won't clear.
wi0: init failed
wi0: failed to attach controller
ex0 at pci0 dev 13 function 0: 3Com 3c905C-TX 10/100 Ethernet with mngmt (rev. 0x74)
ex0: interrupting at irq 11
ex0: MAC address 00:50:da:b4:ac:4b
bmtphy0 at ex0 phy 24: Broadcom 3c905C internal PHY, rev. 6
bmtphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto

I have done the following (one at a time):

-- verified my Amptron K7-830LM motherboard is PCI2.2 compliant
-- verified the DWL-520<B> uses Prism2.5
-- removed all other PCI cards (except IDE controller) and tried the 520 in various slots, to no avail.
-- increased timeouts in wi_pci_reset, to no avail
-- tried using CSR_WRITE_2 instead of bus_space_write_2 as in the current wi_pci_reset, to no avail.
-- removed " * 2" from #define CSR_READ_2, to no avail
-- booted 1.6_STABLE kernel with the DWL-520 and wi0 was successfully attached.

So, it's something that has changed since 1.6 branched from -current.  I just haven't been able to put my finger on it, yet.

While I'm only trying to use ONE wi, it's possible that this is also somehow related to the discussion in PR 18794.
1) Install a single DWL-520 <B>
2) Boot 1.6ZF kernel
-) wi0: PCI reset timed out