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). I'm less
sure about the bInterval ones, 0 is specified as a possible value
(reading the 2.0 specs, that is). As for the final 0x11 (aka COMP_EINVAL),
I don't know what the cause is.
When plugged on one of several (5+) highspeed host controlers I have, it
works fine though.
Here is lsusb -v output of the device:
Bus 001 Device 016: ID 16c0:07a9 VOTI
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x16c0 VOTI
idProduct 0x07a9
bcdDevice 0.00
iManufacturer 1 International Test Instruments
iProduct 2 USB Analyzer 1480A
iSerial 0
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 60
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0x80
(Bus Powered)
MaxPower 100mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 6
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 0
bInterfaceProtocol 0
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x01 EP 1 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x04 EP 4 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x86 EP 6 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x88 EP 8 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
Device Qualifier (for other device speed):
bLength 10
bDescriptorType 6
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
bNumConfigurations 1
Device Status: 0x0000
(Bus Powered)
Regards,
--
Vincent Pelletier
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html