On Wed, 27 Jun 2012, Paul Zimmerman wrote: > > On the other hand, the USB-3 spec also says that when operating in a > > USB-2 electrical environment, the device will "return appropriate > > information according to the requirements laid out in the USB 2.0 > > specification". This contradicts the requirement the bcdUSB value will > > be 3.0. So maybe the manufacturers shouldn't be blamed. > > Just FYI, a device cannot have a bcdUSB of 0x300 in its device descriptor > if it's not running at super speed, because a USB 3.0 device descriptor > is incompatible with earlier versions, due to the bMaxPacketSize0 field > being encoded as a power of 2 instead of a byte count. I don't see any problem. If bcdUSB is 0x0300 and the device is running at, say, high speed then the maxpacket size for ep0 would be 64 bytes, which would be represented by bMaxPacketSize0 = 6. See the description of bMaxPacketSize0 in table 9-8 of the USB-3 spec. You got the logic backward. What _is_ true is that a device running at SuperSpeed cannot have bcdUSB < 0x0300, because earlier versions of the bMaxPacketSize0 field are unable to represent the value 512. 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