On 13/05/16 09:35, Steve Litt wrote:
The following document looked pretty good, but the author kept pulling
unexplained things out of every orifice, so it was impossible to know
how the commands applied to me:

https://pve.proxmox.com/wiki/USB_Devices_in_Virtual_Machines

USB passthrough is a pretty complex thing because I have a Void host, a
Devuan guest, by necessity I have a USB hub. There are so many
variables that, without finding a person who really knows how this
stuff works, I could spend days.

Hey Steve,

USB passthrough can be either complex or simple. I kinda like it the simple way.

Here's how I pass iOS devices through to a Windows VM on my desktop and laptop.

 I add these three lines to my qemu command line script

 -usb\
 -device nec-usb-xhci,id=xhci\
 -device usb-host,bus=xhci.0,vendorid=0x05ac,productid=0x1261 \

The first tells qemu we want the usb stack. The second creates a virtual xhci controller and associated root hub, and the third assigns any device plugged into the host with the VID/PID pair through to the VM.

With that, when I plug my iOS device into the host, qemu claims it and pokes it through to the VM. VID/PID can be just pulled from lsusb when you plug the device into your host.

There are other ways whereby you can attache busses and hubs to the qemu instance, but that seems pretty complex when you just want to pass a single device through (or multiple devices even).

eg :
 -usb\
 -device nec-usb-xhci,id=xhci\
 -device usb-host,bus=xhci.0,vendorid=0x05ac,productid=0x1261 \
 -device usb-host,bus=xhci.0,vendorid=0x05ac,productid=0x12ab \
 -device usb-host,bus=xhci.0,vendorid=0x05ac,productid=0x12aa \
 -device usb-host,bus=xhci.0,vendorid=0x05ac,productid=0x1281 \


That passes through my iPad, my Wife's iPad, my iPod and a mates iPod if any or all of them are connected to the host simultaneously.

Now this works with pretty much anything I've tried from iPads to HASP dongles, digital cameras. You get the idea.

When I pass through my Blackberry for a firmware update, it uses one PID for normal mode and another PID for the bootloader, so I need both of those. Come to think of it, so do the iOS devices when you are firmware updating them. Just claim both and you are good to go.

Normally I'd just pass the VID through and wildcard the PID, but since my desktop and laptop are Apple hardware I end up claiming the accessory devices as well (like camera, sound card and keyboard), so I use both VID and PID.


_______________________________________________
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng

Reply via email to