On Sun, 16 Dec 2012, Vincent Pelletier wrote: > Hi. > > I have a device which enumerates properly on this superspeed host controler: > > 06:00.0 USB controller: Etron Technology, Inc. EJ168 USB 3.0 Host Controller (rev 01) > > but triggers several warnings from the xhci_hcd module, and ultimately fails > activating the default configuration: > > usb 1-1: new high-speed USB device number 6 using xhci_hcd > usb 1-1: config 1 interface 0 altsetting 0 bulk endpoint 0x1 has invalid maxpacket 64 > usb 1-1: config 1 interface 0 altsetting 0 bulk endpoint 0x81 has invalid maxpacket 64 > usb 1-1: New USB device found, idVendor=16c0, idProduct=07a9 > usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0 > usb 1-1: Product: USB Analyzer 1480A > usb 1-1: Manufacturer: International Test Instruments > usb 1-1: ep 0x1 - rounding interval to 32768 microframes, ep desc says 0 microframes > usb 1-1: ep 0x81 - rounding interval to 32768 microframes, ep desc says 0 microframes > usb 1-1: ep 0x82 - rounding interval to 32768 microframes, ep desc says 0 microframes > usb 1-1: ep 0x4 - rounding interval to 32768 microframes, ep desc says 0 microframes > usb 1-1: ep 0x86 - rounding interval to 32768 microframes, ep desc says 0 microframes > usb 1-1: ep 0x88 - rounding interval to 32768 microframes, ep desc says 0 microframes > xhci_hcd 0000:02:00.0: ERROR: unexpected command completion code 0x11. > usb 1-1: can't set config #1, error -22 > > So at this point, this device is unusable with xhci_hcd. > > I checked the specs, and the warnings about wMaxPacketSize seem > justified (although it's unclear to me wether wMaxPacketSize is > restricted to exactly 512B in HS, or only upper-bound at 512B). It's supposed to be exactly 512 bytes. > I'm less > sure about the bInterval ones, 0 is specified as a possible value > (reading the 2.0 specs, that is). Those messages are a bug. xhci_get_endpoint_interval() includes a comment about 0 being a valid bInterval value, but the code fails to take it into account. > As for the final 0x11 (aka COMP_EINVAL), > I don't know what the cause is. My guess is that it is caused by the invalid wMaxPacketSize values. But that's just a guess. Alan Stern -- 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