On Mon, 25 Jun 2012, Sarah Sharp wrote: > The Get Status value for USB 3.0 devices adds three new status bits. > Bits 2 and 3 indicate if U1 and U2 are enabled, and bit 4 indicates if > Latency Tolerance Messaging (LTM) is enabled. > > Upcoming patches for the Linux kernel will enable LTM, so lsusb should > be changed to show whether LTM is enabled for a device. > > Signed-off-by: Sarah Sharp <sarah.a.sharp@xxxxxxxxxxxxxxx> > --- > lsusb.c | 14 +++++++++++--- > 1 files changed, 11 insertions(+), 3 deletions(-) > > diff --git a/lsusb.c b/lsusb.c > index 1e2957e..738d65a 100644 > --- a/lsusb.c > +++ b/lsusb.c > @@ -3435,7 +3435,7 @@ static int do_otg(struct libusb_config_descriptor *config) > } > > static void > -dump_device_status(libusb_device_handle *fd, int otg, int wireless) > +dump_device_status(libusb_device_handle *fd, int otg, int wireless, int super_speed) This doesn't seem consistent... > @@ -3796,7 +3804,7 @@ static void dumpdev(libusb_device *dev) > do_dualspeed(udev); > } > do_debug(udev); > - dump_device_status(udev, otg, wireless); > + dump_device_status(udev, otg, wireless, desc.bcdUSB >= 0x0300); with this. Isn't it true that a USB-3 device will report a bcdUSB value of 0x0300 or above, even when running at high speed or slower? 9.6.1 in the USB-3 spec says: The device descriptor of a SuperSpeed capable device has a version number of 3.0 (0300H). So it looks like the variable should be named "usb3" rather than "super_speed". Alan Stern P.S.: On the other hand, the USB-3 spec also says (in 9.6.2.2) that wSpeedsSupported is a bitmap encoding of the speed supported by the device when operating in SuperSpeed mode -- including bitflags indicating the device supports operation at low, full, and high speed! How is a device supposed to operate at high speed when operating in SuperSpeed mode? -- 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