Usb
我可以通過 qemu 命令行通過 USB 埠嗎?
我正在使用
qemu-system-x86_64
. 我知道通過 USB 設備的兩種方法。例如,我有一隻滑鼠出現在 lsusb 中,例如
Bus 003 Device 011: ID 6ade:9582 Amazing Mouse Maker
我可以通過使用
-device usb-host,vendorid=0x6ade,productid=0x9582
或者
-device usb-host,hostbus=3,hostaddr=11
這兩個我都不是很喜歡。如果我通過供應商/產品 ID 獲取它,那麼在關閉 VM 之前,我將永遠無法收回該滑鼠。
如果我通過 BUS 和設備號獲取它,那麼如果我拔掉它,我將不得不告訴 Qemu 重新獲取它。
我可以通過埠(實際的物理插槽)發送它嗎?假設它已插入匯流排 3 埠 2。我可以通過它嗎?
由於某種原因,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 3.0 插槽的匯流排和埠會有所不同,具體取決於插入的是 USB 2.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