usb: accept usb3 control requests

Windows 10 reportedly sends these, so accept them in case
the device in question is a superspeed (usb3) device.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Message-id: 1485870727-21956-2-git-send-email-kraxel@redhat.com
This commit is contained in:
Gerd Hoffmann 2017-01-31 14:52:07 +01:00
parent e306b2fd3b
commit 811ad5d8f1
2 changed files with 9 additions and 0 deletions

View File

@ -774,6 +774,13 @@ int usb_desc_handle_control(USBDevice *dev, USBPacket *p,
trace_usb_set_device_feature(dev->addr, value, ret);
break;
case DeviceOutRequest | USB_REQ_SET_SEL:
case DeviceOutRequest | USB_REQ_SET_ISOCH_DELAY:
if (dev->speed == USB_SPEED_SUPER) {
ret = 0;
}
break;
case InterfaceRequest | USB_REQ_GET_INTERFACE:
if (index < 0 || index >= dev->ninterfaces) {
break;

View File

@ -135,6 +135,8 @@
#define USB_REQ_GET_INTERFACE 0x0A
#define USB_REQ_SET_INTERFACE 0x0B
#define USB_REQ_SYNCH_FRAME 0x0C
#define USB_REQ_SET_SEL 0x30
#define USB_REQ_SET_ISOCH_DELAY 0x31
#define USB_DEVICE_SELF_POWERED 0
#define USB_DEVICE_REMOTE_WAKEUP 1