]> Git Repo - qemu.git/commitdiff
usbredir: Verify we have 32 bits bulk length cap when redirecting to xhci
authorHans de Goede <[email protected]>
Fri, 14 Dec 2012 13:35:44 +0000 (14:35 +0100)
committerGerd Hoffmann <[email protected]>
Mon, 7 Jan 2013 11:57:24 +0000 (12:57 +0100)
The xhci-hcd may submit bulk transfers > 65535 bytes even when not using
bulk-in pipeling, so usbredir can only be used in combination with an xhci
hcd if the client has the 32 bits bulk length capability.

Signed-off-by: Hans de Goede <[email protected]>
Signed-off-by: Gerd Hoffmann <[email protected]>
hw/usb/redirect.c

index 855c76563a3ea1c882373de1ad3a86bd38abc33e..566737d8f508214d2c9aa50e5ef72456b87d767b 100644 (file)
@@ -979,6 +979,8 @@ static void usbredir_do_attach(void *opaque)
     if ((dev->dev.port->speedmask & USB_SPEED_MASK_SUPER) && !(
         usbredirparser_peer_has_cap(dev->parser,
                                     usb_redir_cap_ep_info_max_packet_size) &&
+        usbredirparser_peer_has_cap(dev->parser,
+                                    usb_redir_cap_32bits_bulk_length) &&
         usbredirparser_peer_has_cap(dev->parser,
                                     usb_redir_cap_64bits_ids))) {
         ERROR("usb-redir-host lacks capabilities needed for use with XHCI\n");
This page took 0.027984 seconds and 4 git commands to generate.