Most recent kernel where this bug did not occur: 2.6.16.17 Distribution: Debian Etch, vanilla kernel from ftp.kernel.org Hardware Environment: Laptop Sony VAIO PCG-FR215E (AMD Athlon) Software Environment: Problem Description: Kernel 2.6.16.16 works fine. Starting with 2.6.16.17, there are following messages on boot: ehci_hcd 0000:00:10.3: Unlink after no-IRQ? Controller is probably using the wrong IRQ. usb 1-1: device not accepting address 2, error -110 usb 1-1: new high speed USB device using ehci_hcd and address 3 usb 1-1: device not accepting address 3, error -110 [....] several further addresses are probed in ascending order, always with same result (error). This bug is probably related to the patch of drivers/pci/quirk.c in patch-2.6.16.16-17. I tried to re-insert the line 'DECLARE_PCI_FIXUP_ENABLE(PCI_VENDOR_ID_VIA, PCI_ANY_ID, quirk_via_irq);' after 'DECLARE_PCI_FIXUP_ENABLE(PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_82C686_5, quirk_via_irq);' (line no. 658). With this change, the machine booted as usual, without problems. But i am not a programmer and have no idea what i did ;-) Output of lspci -vvv: ------------ lspci -vvv ----------------- 0000:00:00.0 Host bridge: VIA Technologies, Inc. VT8366/A/7 [Apollo KT266/A/333] Subsystem: Sony Corporation: Unknown device 8143 Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap+ 66MHz+ UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort+ >SERR- <PERR- Latency: 0 Region 0: Memory at e8000000 (32-bit, prefetchable) [size=128M] Capabilities: [a0] AGP version 2.0 Status: RQ=32 Iso- ArqSz=0 Cal=0 SBA+ ITACoh- GART64- HTrans- 64bit- FW- AGP3- Rate=x1,x2,x4 Command: RQ=1 ArqSz=0 Cal=0 SBA- AGP+ GART64- 64bit- FW- Rate=x4 Capabilities: [c0] Power Management version 2 Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-) Status: D0 PME-Enable- DSel=0 DScale=0 PME- 0000:00:01.0 PCI bridge: VIA Technologies, Inc. VT8366/A/7 [Apollo KT266/A/333 AGP] (prog-if 00 [Normal decode]) Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap+ 66MHz+ UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort+ >SERR- <PERR- Latency: 0 Bus: primary=00, secondary=01, subordinate=01, sec-latency=0 I/O behind bridge: 0000f000-00000fff Memory behind bridge: e1000000-e1ffffff Prefetchable memory behind bridge: f0000000-f7ffffff BridgeCtl: Parity- SERR- NoISA+ VGA+ MAbort- >Reset- FastB2B- Capabilities: [80] Power Management version 2 Flags: PMEClk- DSI- D1+ D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-) Status: D0 PME-Enable- DSel=0 DScale=0 PME- 0000:00:0c.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10) Subsystem: Sony Corporation: Unknown device 8143 Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- Latency: 64 (8000ns min, 16000ns max) Interrupt: pin A routed to IRQ 9 Region 0: I/O ports at 1400 [size=256] Region 1: Memory at e0000000 (32-bit, non-prefetchable) [size=512] Capabilities: [50] Power Management version 2 Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=375mA PME(D0-,D1+,D2+,D3hot+,D3cold+) Status: D0 PME-Enable- DSel=0 DScale=0 PME- 0000:00:0e.0 CardBus bridge: Ricoh Co Ltd RL5c476 II (rev aa) Subsystem: Sony Corporation: Unknown device 8143 Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- Latency: 168 Interrupt: pin A routed to IRQ 11 Region 0: Memory at 38000000 (32-bit, non-prefetchable) [size=4K] Bus: primary=00, secondary=02, subordinate=05, sec-latency=176 Memory window 0: 30000000-31fff000 (prefetchable) Memory window 1: 32000000-33fff000 I/O window 0: 00002000-000020ff I/O window 1: 00002400-000024ff BridgeCtl: Parity- SERR- ISA- VGA- MAbort- >Reset- 16bInt+ PostWrite+ 16-bit legacy interface ports at 0001 0000:00:0e.1 CardBus bridge: Ricoh Co Ltd RL5c476 II (rev aa) Subsystem: Sony Corporation: Unknown device 8143 Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- Latency: 168 Interrupt: pin B routed to IRQ 9 Region 0: Memory at 38001000 (32-bit, non-prefetchable) [size=4K] Bus: primary=00, secondary=06, subordinate=09, sec-latency=176 Memory window 0: 34000000-35fff000 (prefetchable) Memory window 1: 36000000-37fff000 I/O window 0: 00002800-000028ff I/O window 1: 00002c00-00002cff BridgeCtl: Parity- SERR- ISA- VGA- MAbort- >Reset- 16bInt+ PostWrite+ 16-bit legacy interface ports at 0001 0000:00:0e.2 FireWire (IEEE 1394): Ricoh Co Ltd R5C552 IEEE 1394 Controller (rev 02) (prog-if 10 [OHCI]) Subsystem: Sony Corporation: Unknown device 8143 Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- Interrupt: pin C routed to IRQ 255 Region 0: Memory at e0000800 (32-bit, non-prefetchable) [disabled] [size=2K] Capabilities: [dc] Power Management version 2 Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0+,D1-,D2-,D3hot+,D3cold+) Status: D0 PME-Enable- DSel=0 DScale=2 PME- 0000:00:10.0 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 80) (prog-if 00 [UHCI]) Subsystem: Sony Corporation: Unknown device 8143 Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- Latency: 64, Cache Line Size: 0x08 (32 bytes) Interrupt: pin A routed to IRQ 11 Region 4: I/O ports at 1020 [size=32] Capabilities: [80] Power Management version 2 Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=375mA PME(D0+,D1+,D2+,D3hot+,D3cold+) Status: D0 PME-Enable- DSel=0 DScale=0 PME+ 0000:00:10.1 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 80) (prog-if 00 [UHCI]) Subsystem: Sony Corporation: Unknown device 8143 Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort+ >SERR- <PERR- Latency: 64, Cache Line Size: 0x08 (32 bytes) Interrupt: pin B routed to IRQ 9 Region 4: I/O ports at 1040 [size=32] Capabilities: [80] Power Management version 2 Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=375mA PME(D0+,D1+,D2+,D3hot+,D3cold+) Status: D0 PME-Enable- DSel=0 DScale=0 PME- 0000:00:10.2 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 80) (prog-if 00 [UHCI]) Subsystem: Sony Corporation: Unknown device 8143 Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- Latency: 64, Cache Line Size: 0x08 (32 bytes) Interrupt: pin C routed to IRQ 11 Region 4: I/O ports at 1060 [size=32] Capabilities: [80] Power Management version 2 Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=375mA PME(D0+,D1+,D2+,D3hot+,D3cold+) Status: D0 PME-Enable- DSel=0 DScale=0 PME- 0000:00:10.3 USB Controller: VIA Technologies, Inc. USB 2.0 (rev 82) (prog-if 20 [EHCI]) Subsystem: Sony Corporation: Unknown device 8143 Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- Latency: 64, Cache Line Size: 0x10 (64 bytes) Interrupt: pin D routed to IRQ 9 Region 0: Memory at e0000400 (32-bit, non-prefetchable) [size=256] Capabilities: [80] Power Management version 2 Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=375mA PME(D0+,D1+,D2+,D3hot+,D3cold+) Status: D0 PME-Enable- DSel=0 DScale=0 PME- 0000:00:11.0 ISA bridge: VIA Technologies, Inc. VT8235 ISA Bridge Subsystem: Sony Corporation: Unknown device 8143 Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping+ SERR- FastB2B- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- Latency: 0 Capabilities: [c0] Power Management version 2 Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-) Status: D0 PME-Enable- DSel=0 DScale=0 PME- 0000:00:11.1 IDE interface: VIA Technologies, Inc. VT82C586A/B/VT82C686/A/B/VT823x/A/C PIPC Bus Master IDE (rev 06) (prog-if 8a [Master SecP PriP]) Subsystem: Sony Corporation: Unknown device 8143 Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- Latency: 0 Interrupt: pin A routed to IRQ 11 Region 4: I/O ports at 1000 [size=16] Capabilities: [c0] Power Management version 2 Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-) Status: D0 PME-Enable- DSel=0 DScale=0 PME- 0000:00:11.5 Multimedia audio controller: VIA Technologies, Inc. VT8233/A/8235/8237 AC97 Audio Controller (rev 50) Subsystem: Sony Corporation: Unknown device 8143 Control: I/O+ Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- Interrupt: pin C routed to IRQ 11 Region 0: I/O ports at 1800 [size=256] Capabilities: [c0] Power Management version 2 Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-) Status: D0 PME-Enable- DSel=0 DScale=0 PME- 0000:00:11.6 Communication controller: VIA Technologies, Inc. AC'97 Modem Controller (rev 80) Subsystem: Sony Corporation: Unknown device 8143 Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- Interrupt: pin C routed to IRQ 255 Region 0: I/O ports at 1c00 [disabled] [size=256] Capabilities: [d0] Power Management version 2 Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-) Status: D0 PME-Enable- DSel=0 DScale=0 PME- 0000:01:00.0 VGA compatible controller: nVidia Corporation NV17 [GeForce4 420 Go] (rev a3) (prog-if 00 [VGA]) Subsystem: Sony Corporation: Unknown device 8143 Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- Latency: 248 (1250ns min, 250ns max) Interrupt: pin A routed to IRQ 11 Region 0: Memory at e1000000 (32-bit, non-prefetchable) [size=16M] Region 1: Memory at f4000000 (32-bit, prefetchable) [size=64M] Region 2: Memory at f0000000 (32-bit, prefetchable) [size=512K] Expansion ROM at f0080000 [disabled] [size=128K] Capabilities: [60] Power Management version 2 Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-) Status: D0 PME-Enable- DSel=0 DScale=0 PME- Capabilities: [44] AGP version 2.0 Status: RQ=32 Iso- ArqSz=0 Cal=0 SBA- ITACoh- GART64- HTrans- 64bit- FW+ AGP3- Rate=x1,x2,x4 Command: RQ=32 ArqSz=0 Cal=0 SBA- AGP+ GART64- 64bit- FW- Rate=x4 -------------End of lspci -vvv ------- Output of /proc/interrupts: CPU0 0: 600906 XT-PIC timer 1: 5939 XT-PIC i8042 2: 0 XT-PIC cascade 7: 585 XT-PIC parport0 8: 4 XT-PIC rtc 9: 119738 XT-PIC acpi, ehci_hcd:usb1, uhci_hcd:usb3, yenta, eth0 11: 127662 XT-PIC uhci_hcd:usb2, uhci_hcd:usb4, yenta, VIA8233, nvidia 12: 1546 XT-PIC i8042 14: 22039 XT-PIC ide0 15: 18751 XT-PIC ide1 NMI: 0 LOC: 600852 ERR: 92 MIS: 0 Output of /proc/iomem: 00000000-0009f7ff : System RAM 0009f800-0009ffff : reserved 000a0000-000bffff : Video RAM area 000c0000-000cfbff : Video ROM 000f0000-000fffff : System ROM 00100000-1feeffff : System RAM 00100000-002b48e8 : Kernel code 002b48e9-00364c23 : Kernel data 1fef0000-1fefbfff : ACPI Tables 1fefc000-1fefffff : ACPI Non-volatile Storage 1ff00000-1fffffff : reserved 30000000-31ffffff : PCI CardBus #02 32000000-33ffffff : PCI CardBus #02 34000000-35ffffff : PCI CardBus #06 36000000-37ffffff : PCI CardBus #06 38000000-38000fff : 0000:00:0e.0 38000000-38000fff : yenta_socket 38001000-38001fff : 0000:00:0e.1 38001000-38001fff : yenta_socket e0000000-e00001ff : 0000:00:0c.0 e0000000-e00001ff : 8139too e0000400-e00004ff : 0000:00:10.3 e0000400-e00004ff : ehci_hcd e0000800-e0000fff : 0000:00:0e.2 e1000000-e1ffffff : PCI Bus #01 e1000000-e1ffffff : 0000:01:00.0 e1000000-e1ffffff : nvidia e8000000-efffffff : 0000:00:00.0 f0000000-f7ffffff : PCI Bus #01 f0000000-f007ffff : 0000:01:00.0 f0080000-f009ffff : 0000:01:00.0 f4000000-f7ffffff : 0000:01:00.0 f4000000-f4ffffff : vesafb fffe0000-ffffffff : reserved Output of /proc/ioports: 0000-001f : dma1 0020-0021 : pic1 0040-0043 : timer0 0050-0053 : timer1 0060-006f : keyboard 0070-0077 : rtc 0080-008f : dma page reg 00a0-00a1 : pic2 00c0-00df : dma2 00f0-00ff : fpu 0170-0177 : ide1 01f0-01f7 : ide0 0376-0376 : ide1 0378-037a : parport0 03c0-03df : vesafb 03f6-03f6 : ide0 04d0-04d1 : pnp 00:06 0cf8-0cff : PCI conf1 1000-100f : 0000:00:11.1 1000-1007 : ide0 1008-100f : ide1 1020-103f : 0000:00:10.0 1020-103f : uhci_hcd 1040-105f : 0000:00:10.1 1040-105f : uhci_hcd 1060-107f : 0000:00:10.2 1060-107f : uhci_hcd 1400-14ff : 0000:00:0c.0 1400-14ff : 8139too 1800-18ff : 0000:00:11.5 1800-18ff : VIA8233 1c00-1cff : 0000:00:11.6 2000-20ff : PCI CardBus #02 2400-24ff : PCI CardBus #02 2800-28ff : PCI CardBus #06 2c00-2cff : PCI CardBus #06 8000-807f : 0000:00:11.0 8000-807f : motherboard 8000-8003 : PM1a_EVT_BLK 8004-8005 : PM1a_CNT_BLK 8008-800b : PM_TMR 8010-8015 : ACPI CPU throttle 8020-8023 : GPE0_BLK 8100-810f : 0000:00:11.0 8100-8107 : vt596_smbus Steps to reproduce: - Install kernel 2.6.16.17 (on this machine) - reboot with USB2.0 devices connected
Some PCI IDs are missing. I'll send a patch for those shortly as well as another patch which probably should live in -mm for a bit to *not* doing the quirk when ACPI is used for interrupt routing.
Kernel 2.6.18-rc1-mm2 seems to solve this problem. (Output of dmesg and lspci -n as attachment)
Created attachment 8557 [details] dmesg of kernel 2.6.18.rc1-mm2 Output of dmesg on kernel 2.6.18-rc1-mm2. Problem seems to be solved.
Created attachment 8558 [details] lspci -n on 2.6.18-rc1-mm2 Output of lspci -n on kernel 2.6.18-rc1-mm2 Problem seems to be solved
Created attachment 8942 [details] test case, with a fix. I had the exact same problem, when upgrading from 2.6.15 to the 2.6.18-rc5 Came up with a patch, which added quirk_via_irq() for VIA USB 2.0 controler, but I'm not including it -- the exact same patch has already made it into 2.6.18-rc6. I think this bug may be closed now. Symptoms are very similar to the bug 5835, but I can't see "disconnect after no-IRQ' message anywhere in dmesgs there. More information about my machine is in the attachemnt.
The bug seems to be closed with kernel 2.6.18 as i installed this version three days ago and had no problems since then. USB is working and the error reports during boot ("Unlink after no-IRQ?" etc.) do not appear any longer. It looks very good! Many thanks to all who were concerned in resolving this problem! (I'm new to the bugzilla-system, so I don't know exactly what to do with the bug status. As of my point of view, setting it to resolved/closed should be appropriate.)
Sven, Are you sure it's fixed? There hasn't been anything merged yet that should deal with all the cases of b0rkage, though as mentioned before not everyone needs to the quirk. Is it possible you upgraded your bios and or are now using ACPI whereas in the past you didn't?
I didn't touch the bios and didn't change any bios-settings or kernel-parameters. I always used ACPI and without it USB is/was not working at all. But there _is_ a patch in 2.6.18 concerning this bug: ---------- cut from ChangeLog-2.6.18 --------- commit 1ae4f9ba84b94b85d995a6ae0064b869ff15b080 Author: Mark Hindley <mark@hindley.org.uk> Date: Mon Aug 28 20:43:25 2006 +0100 USB: Add VIA quirk fixup for VT8235 usb2 Patch to add VIA PCI quirk for Enhanced/Extended USB on VT8235 southbridge. It is needed in order to use EHCI/USB 2.0 with ACPI. Without it IRQs are not routed correctly, you get an "Unlink after no-IRQ?" error and the device is unusable. I belive this could also be a fix for Bugzilla Bug 5835. Signed-off-by: Mark Hindley <mark@hindley.org.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> ---------- end --------- It is exactly the error message i got here and the description of the other symptoms matches too. Isn't it possible that this patch resolved the problem?