Red Hat Bugzilla – Bug 432770
Lenovo X61 some USB ports not working
Last modified: 2008-08-19 15:37:34 EDT
Description of problem:
The X61 has three USB Ports. One left of keyboard, which works fine. Two right
of keyboard which do not work as expected.
Version-Release number of selected component (if applicable):
Current RHEL 5.1
Steps to Reproduce:
1. Connect USB device to one of the ports on the right side
2. Check /var/log/messages
3. USB device does not work
Working USB device
Here some excerpts when connecting a CD drive:
Feb 14 10:46:24 jhwx61 kernel: usb 5-3: new high speed USB device using ehci_hcd
and address 6
Feb 14 10:46:24 jhwx61 kernel: usb 5-3: configuration #1 chosen from 1 choice
Feb 14 10:46:24 jhwx61 kernel: scsi3 : SCSI emulation for USB Mass Storage devices
Feb 14 10:46:29 jhwx61 kernel: Vendor: LENOVO Model: USB_MultiBurner3 Rev:
Feb 14 10:46:29 jhwx61 kernel: Type: CD-ROM ANSI
SCSI revision: 00
Feb 14 10:46:29 jhwx61 kernel: scsi 3:0:0:0: Attached scsi generic sg1 type 5
Feb 14 10:46:35 jhwx61 kernel: sr0: scsi3-mmc drive: 24x/24x writer dvd-ram
cd/rw xa/form2 cdda tray
Feb 14 10:46:35 jhwx61 kernel: Uniform CD-ROM driver Revision: 3.20
Feb 14 10:46:39 jhwx61 hald: mounted /dev/scd0 on behalf of uid 500
Now connecting same device to right USB port:
Feb 14 10:46:47 jhwx61 kernel: usb 6-1: new high speed USB device using ehci_hcd
and address 10
Feb 14 10:46:59 jhwx61 kernel: usb 6-1: device not accepting address 10, error -110
Feb 14 10:46:59 jhwx61 kernel: usb 6-1: new high speed USB device using ehci_hcd
and address 11
Feb 14 10:47:10 jhwx61 kernel: usb 6-1: device not accepting address 11, error -110
Feb 14 10:47:10 jhwx61 kernel: usb 6-1: new high speed USB device using ehci_hcd
and address 12
Feb 14 10:47:21 jhwx61 kernel: usb 6-1: device not accepting address 12, error -110
Feb 14 10:47:21 jhwx61 kernel: usb 6-1: new high speed USB device using ehci_hcd
and address 13
Feb 14 10:47:31 jhwx61 kernel: usb 6-1: device not accepting address 13, error -110
This has nothing to do with USB. The interrupt routing on X61 is broken
for some reason. It's either an outright kernel bug, or bad ACPI tables
and we failed to work around them.
Jan, please attach an unedited dmesg to this bug (do not drop it into
the comments box).
Created attachment 296442 [details]
DMESG after reboot
It seems to be a more complex problem. Short form:
* USB 2.x devices work
* USB 1.x devices are not seen
I would like to gather some more input, but this far I have tested:
* iPod Nano - works
* Palm m515 with original USB Cradle - not working
* Palm m515 with third party hotsync USB cable - not working
Where not working means: Nothing in /var/log/messages.
So I am *suspecting* that there is a problem with USB 1.x devices only.
Comment #6 contradicts actual messages from the original report. The
report has EHCI (for bus 6) recorded throwing errors, and that's the
Hi-Speed (480 mbit/s) controller.
I'm going to ignore information in comment #6 as incorrent and consider
ACPI: PCI Interrupt 0000:00:1d.7[D] -> GSI 19 (level, low) -> IRQ 233
ehci_hcd 0000:00:1d.7: EHCI Host Controller
ehci_hcd 0000:00:1d.7: new USB bus registered, assigned bus number 6
BTW, I expect booting with "noapic" or "pci=routeirq" to work around
You can ignore my experiences at your will, however let me clarify first.
The original report was based on kernel-2.6.18-78 (i686)
Comment #6 is based on kernel-2.6.18-83 (i686)
Will try both pci=routeirq and noapic and reports results here.
So there seems to be a change between -78 and -83. I have attached a clean dmesg
for -83 for you to check.
USB 2 devices now work on all ports, so my original report seems to be solved
for USB 2.x devices. However, my palm is still not seen. Yes I modprobed visor,
yes it did work before.
Created attachment 297163 [details]
clean dmesg of -83 32bit kernel on X61
Aww, I was just going to ask for dmesgs with connect attempts, so we
know for sure which IRQ is bad in each case. If they are different,
we'll need two.
I ran diff on dmesgs in comment #5 and #10, and they are essentially
the same (minus an error -71 which is caused by EHCI disrupting the
enumeration on its companion). So, kernel does not print anything
interesting on its own. I'll need to find a way to dump the ACPI
tables and re-interpret them.
I'm behind the curve, here's the upstream bug:
The fix is to update the BIOS to 2.06 (7NETA6WW), apparently.
I am at 2.06 according to dmidecode. Still the problem persists. Hoiwever, there
seems to be a 2.10 BIOS which I will try ASAP.
Jan, did BIOS 2.10 work? I need to know because our kernel 2.6.18 may
be different from what testers in Bugme used, so I have to split your
problem off the BIOS problem (it may be both).
This is not a blocking issue for RHEL 5.2, moved the issue out to RHEL 5.3.
Please post the latest results with the updated BIOS.
Closing out as current release against RHEL 5.2, the kernel team does not experience any USB port failures on our x61 laptops.
Any remaining issues on Jan's laptop need to be reported in bugzilla against the latest RHEL 5.3 kernel build.