For usb2 bMaxPacketSize0 is "n", for usb3 it is "1 << n", so it must be 9 not 64 ...
rom "Universal Serial Bus 3.1 Specification": If the device is operating at Gen X speed, the bMaxPacketSize0 field shall be set to 09H indicating a 512-byte maximum packet. An Enhanced SuperSpeed device shall not support any other maximum packet sizes for the default control pipe (endpoint 0) control endpoint. We now announce a 512-byte maximum packet. Fixes: 89a453d4a5c ("uas-uas: usb3 streams") Reported-by: Benjamin David Lunt <f...@fysnet.net> Signed-off-by: Gerd Hoffmann <kra...@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <phi...@redhat.com> Message-id: 20200117073716.31335-1-kra...@redhat.com --- hw/usb/dev-uas.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hw/usb/dev-uas.c b/hw/usb/dev-uas.c index 9825ec37d09c..11a8684cc2ab 100644 --- a/hw/usb/dev-uas.c +++ b/hw/usb/dev-uas.c @@ -303,7 +303,7 @@ static const USBDescDevice desc_device_high = { static const USBDescDevice desc_device_super = { .bcdUSB = 0x0300, - .bMaxPacketSize0 = 64, + .bMaxPacketSize0 = 9, .bNumConfigurations = 1, .confs = (USBDescConfig[]) { { -- 2.18.2