usbredir: Add support for buffered bulk input (v2)
commitb2d1fe67d09d2b6c7da647fbcea6ca0148c206d3
authorHans de Goede <hdegoede@redhat.com>
Wed, 19 Dec 2012 14:08:33 +0000 (19 15:08 +0100)
committerGerd Hoffmann <kraxel@redhat.com>
Tue, 8 Jan 2013 09:56:58 +0000 (8 10:56 +0100)
tree716f4d0a8594de8895e2a91e3eb71cbac65b2f12
parent358d615b6908b4916c74819ffad823cb4a74314e
usbredir: Add support for buffered bulk input (v2)

Buffered bulk mode is intended for bulk *input* endpoints, where the data is
of a streaming nature (not part of a command-response protocol). These
endpoints' input buffer may overflow if data is not read quickly enough.
So in buffered bulk mode the usb-host takes care of the submitting and
re-submitting of bulk transfers.

Buffered bulk mode is necessary for reliable operation with the bulk in
endpoints of usb to serial convertors. Unfortunatelty buffered bulk input
mode will only work with certain devices, therefor this patch also adds a
usb-id table to enable it for devices which need it, while leaving the
bulk ep handling for other devices unmodified.

Note that the bumping of the required usbredir from 0.5.3 to 0.6 does
not mean that we will now need a newer usbredir release then qemu-1.3,
.pc files reporting 0.5.3 have only ever existed in usbredir builds directly
from git, so qemu-1.3 needs the 0.6 release too.

Changes in v2:
-Split of quirk handling into quirks.c

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
configure
hw/usb.h
hw/usb/Makefile.objs
hw/usb/quirks-ftdi-ids.h [new file with mode: 0644]
hw/usb/quirks-pl2303-ids.h [new file with mode: 0644]
hw/usb/quirks.c [new file with mode: 0644]
hw/usb/quirks.h [new file with mode: 0644]
hw/usb/redirect.c