何らかの理由で、これはQemu 2.12.50ユーザードキュメントに記載されておらず、この人から学んだことを学ぶ必要がありました。
彼らは言及します
-device usb-host,hostbus=bus,hostaddr=addr
Pass through the host device identified by bus and addr
-device usb-host,vendorid=vendor,productid=product
Pass through the host device identified by vendor and product ID
しかし、彼らはあなたができることについては触れていません
-device usb-host,hostbus=bus,hostport=port
例えば...
lsusb -tを実行して取得した場合
/: Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/14p, 480M
|__ Port 10: Dev 8, If 0, Class=Human Interface Device, Driver=usbhid, 12M
|__ Port 11: Dev 6, If 0, Class=Human Interface Device, Driver=usbhid, 12M
私はこれらを渡すことを決めることができました
-device usb-host,hostbus=3,hostport=10 \
-device usb-host,hostbus=3,hostport=11 \
そして、それらは物理スロットに対応します。
ただし、USB 2.0デバイスまたはUSB 3.0デバイスが接続されているかどうかによって、USB 3.0スロットのバスとポートは異なりますが、各デバイスのポートは一定のままです。
USB 2.0スロットでは、このような差異はありません。
/ *更新:USBハブ* /
ドットを使用してポートを区切ります。だからあなたが持っていた場合...
/: Bus 03
|__ Port 2: some stuff
|__ Port 1: some stuff
あなたは使うでしょう -device usb-host,hostbus=3,hostport=2.1
-usb
コマンドラインでも必要なことがわかりました。