On Fri, Oct 26, 2012 at 10:36:06PM +0200, Matthias Schniedermeyer wrote: > On 26.10.2012 12:27, Sarah Sharp wrote: > > On Wed, Oct 24, 2012 at 08:26:21PM +0200, Matthias Schniedermeyer wrote: > > > I tried 3.7-rc2 (exactly, i think) > > > > > > This isn't the same computer, but the same('oldconfig'ed) > > > configuration. This computer has a NEC-chip for xhci. > > > > > > uname -a: > > > Linux exp 3.7.0-rc2 #1 SMP Wed Oct 24 19:45:48 CEST 2012 x86_64 GNU/Linux > > > > > > First: > > > Oct 24 20:17:52 localhost kernel: [ 118.531900] usb 4-1: new SuperSpeed USB device number 2 using xhci_hcd > > > Oct 24 20:17:52 localhost kernel: [ 118.546081] usb 4-1: Parent hub missing LPM exit latency info. Power management will be impacted. > > > Oct 24 20:18:02 localhost kernel: [ 128.518344] usb 4-1: New USB device found, idVendor=174c, idProduct=5106 > > > Oct 24 20:18:02 localhost kernel: [ 128.519551] usb 4-1: New USB device strings: Mfr=2, Product=3, SerialNumber=1 > > > Oct 24 20:18:02 localhost kernel: [ 128.520696] usb 4-1: Product: AS2105 > > > Oct 24 20:18:02 localhost kernel: [ 128.521828] usb 4-1: Manufacturer: ASMedia > > > Oct 24 20:18:07 localhost kernel: [ 133.507705] usb 4-1: can't set config #1, error -110 > > > > > > Command: > > > echo 1 >/sys/bus/usb/devices/4-1/bConfigurationValue > > > > > > Same response as before: > > > Oct 24 20:18:50 localhost kernel: [ 176.642856] xhci_hcd 0000:04:00.0: Trying to add endpoint 0x81 without dropping it. > > > > I have two hypothesis. Either the USB core's error handling in > > usb_set_configuration is not resetting the bandwidth after it the > > endpoints are allocated, or maybe the xHCI host stopped responding to > > commands all together, and the command to reset the bandwidth timed out. > > > > Can you recompile with CONFIG_USB_XHCI_HCD_DEBUGGING turned on, and send > > me the full dmesg? I'd like to see what happens when the configuration > > fails, and then you write to the bConfigurationValue file. > > Here we go, this is still with 3.7-rc2: Ok, I think I see the issue: > [ 34.083530] usb 3-1: New USB device found, idVendor=174c, idProduct=5106 > [ 34.084647] usb 3-1: New USB device strings: Mfr=2, Product=3, SerialNumber=1 > [ 34.085703] usb 3-1: Product: AS2105 > [ 34.086751] usb 3-1: Manufacturer: ASMedia > [ 34.087856] usb 3-1: usb_probe_device > [ 34.087858] usb 3-1: configuration #1 chosen from 1 choice > [ 34.087862] xhci_hcd 0000:04:00.0: add ep 0x81, slot id 1, new drop flags = 0x0, new add flags = 0x8, new slot info = 0x18400000 > [ 34.087865] xhci_hcd 0000:04:00.0: add ep 0x2, slot id 1, new drop flags = 0x0, new add flags = 0x18, new slot info = 0x20400000 > [ 34.087867] xhci_hcd 0000:04:00.0: xhci_check_bandwidth called for udev ffff880111aa6000 ... > [ 34.088217] usb 3-1: Successful Endpoint Configure command ... > [ 39.072627] xhci_hcd 0000:04:00.0: Cancel URB ffff880113177e40, dev 1, ep 0x0, starting at offset 0xd7420a10 > [ 39.072632] xhci_hcd 0000:04:00.0: // Ding dong! > [ 39.072852] xhci_hcd 0000:04:00.0: Removing canceled TD starting at 0xd7420a10 (dma). > [ 39.072857] xhci_hcd 0000:04:00.0: TRB to noop at offset 0xd7420a10 > [ 39.072861] xhci_hcd 0000:04:00.0: TRB to noop at offset 0xd7420a20 > [ 39.072884] usb 3-1: khubd timed out on ep0out len=0/0 > [ 39.072889] xhci_hcd 0000:04:00.0: xhci_check_bandwidth called for udev ffff880111aa6000 > [ 39.072894] usb 3-1: can't set config #1, error -110 The USB core isn't dropping the endpoints before it calls xhci_check_bandwidth. I remember running into this bug a while back, and I even started on a fix, but then couldn't reproduce the problem. I found the branch with the old fix on it, but it still needs a bit of work. I'll send you a patch on Monday. Sarah Sharp -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html