thank you for kind reply i personally tried to test QEMU on Windows with libusb feature (--enable-libusb)
but, figured out qemu/hw/usb/host-libusb.c is linux-dependent . - because. it includes <poll.h> which is not compatible. by the way, libusb has some OS-specific (porting) codes in it . any plan on changing this ? currently i've worked around this compile error, and keep testing. but i've not seen the result yet. hopefully willl share some real result with you Regards. Geunhae 2013/7/10 Hans de Goede <hdego...@redhat.com> > 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 >