[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [Qeustion] USB passthough doesn't work on Windows.
From: |
Hans de Goede |
Subject: |
Re: [Qemu-devel] [Qeustion] USB passthough doesn't work on Windows. |
Date: |
Wed, 10 Jul 2013 09:39:47 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130625 Thunderbird/17.0.7 |
Hi,
On 07/08/2013 05:08 PM, Geunhae Lee wrote:
hi thanks for you kind answer,
admit about lacking of infos haha..
here's my situations.
1. i currently use QEMU ver 1.2, but plan to upgrade to 1.5 soon.
2. in version 1.2, i found that USB passthrough is not supported on Windows/Mac.
In version 1.5, however, it seems possible to use passthrough by
re-implementing usb host (libusb) , right?
libusb already is ported to windows and darwin, but support there is limited,
mostly
because the OS tends to get in the way a lot more there then under Linux.
In general under Windows it requires uninstalling the windows driver for the
device, and
replacing it with one of 3 supported generic usb drivers: winusb, libusb0 or
libusbk.
Under Darwin there is a standard API for accessing USB devices from userspace
(like under
Linux), and just like under Linux the native device driver needs to be detached
first.
The problem is that unlike under Linux, the native driver can refuse to be
detached, and
many drivers have stub code for this functionality like this:
int detach_driver(...)
{
return -EPERM;
}
IOW most Darwin drivers refuse to be detached from their device, making it
impossible to
redirect them. This can be circumvented by first replacing the driver with a so
called
codeless kext.
So all in all doing usb redirection under Windows and Mac OS X is far from
trivial, on paper
it is supported with the new libusb host redirection code, but the user will
likely need
to first swap drivers manually before a device can be redirected (and then
manually swap them
back to give the device back to the host os later).
but i didn't find out any former work which uses USB passthrough on
Windows and Mac
so my questions are 2 followings.
1. is there any articles about using USB passthrough on Windows and MAC
No.
2. do you guys have some performance issues?
- libusb vs former implementation (qemu ver 1.2)
libusb's passthrough performance under Linux should be identical (and in some
cases slightly
better) then the DIY code we were using before.
Regards,
Hans