summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJason Wessel <jason.wessel@windriver.com>2009-05-18 10:00:28 -0500
committerAnthony Liguori <aliguori@us.ibm.com>2009-05-22 10:50:35 -0500
commitd55ebf5539139b26b9c6412a834cb493f008a8a9 (patch)
treef2a85612ca46f1c9f533500ad587d12d5a9b64b0 /usb-linux.c
parentserial: fix lost character after sysrq (diff)
downloadqemu-kvm-d55ebf5539139b26b9c6412a834cb493f008a8a9.tar.gz
qemu-kvm-d55ebf5539139b26b9c6412a834cb493f008a8a9.tar.bz2
qemu-kvm-d55ebf5539139b26b9c6412a834cb493f008a8a9.zip
USB serial device support
Add in a workaround to allow the usb serial devices to work with the usb pass through mechanism. The ioctl() to request an alternate interface will always return < 0 for a usb-serial device based on the kernel driver. This means there is no alternate interface end point. This was fully tested with a pl2303 usb serial device. Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
Diffstat (limited to 'usb-linux.c')
-rw-r--r--usb-linux.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/usb-linux.c b/usb-linux.c
index 70d7a1c29..67e4acd51 100644
--- a/usb-linux.c
+++ b/usb-linux.c
@@ -833,8 +833,7 @@ static int usb_linux_update_endp_table(USBHostDevice *s)
ret = ioctl(s->fd, USBDEVFS_CONTROL, &ct);
if (ret < 0) {
- perror("usb_linux_update_endp_table");
- return 1;
+ alt_interface = interface;
}
/* the current interface descriptor is the active interface