Der iPod Touch 5G wird in qemu Windows 7 VM nicht erkannt

1556
ipatch

Ich habe einen iPod Touch 5G und eine Windows 7 VM. Ich versuche, den iPod Touch an die VM weiterzuleiten, damit Windows ihn erkennen kann, aber im qemu-Monitor wird die folgende Fehlermeldung angezeigt.

(qemu) usb_add host:05ac:12aa Warning: speed mismatch trying to attach usb device "iPod" (high speed) to bus "usb-bus.0", port "2.1" (full speed) (qemu) qemu-system-x86_64: Warning: speed mismatch trying to attach usb device "iPod" (high speed) to bus "usb-bus.0", port "2.1" (full speed) qemu-system-x86_64: Warning: speed mismatch trying to attach usb device "iPod" (high speed) to bus "usb-bus.0", port "2.1" (full speed) (qemu) 
4

2 Antworten auf die Frage

6
sccott

Nachdem ich 2-3 Tage damit verbracht hatte, fand ich die Lösung dafür. Wirklich Open-Source-Software muss eine bessere Dokumentation zur Verwendung der Software entwickeln.

Die obige Warnung bezüglich der Nichtübereinstimmung der USB-Geschwindigkeit wird ausgelöst, weil ältere USB-Host-Controller-Treiber (USB-Bus = USB1.x) geladen werden, während die Geräte USB2.X / USB-ehci oder USB3.X / USB-XHCI sind. Daher tritt eine Nichtübereinstimmung der USB-Geschwindigkeit auf.

  1. Laden Sie die USB-Host-Controller zusammen mit dem Befehl qemu.

    qemu-system-x86_64 --enable-kvm -m 4G -monitor stdio -usb -device nec-usb-xhci,id=xhci -device usb-ehci,id=ehci /pathtovirtdiskfile.vmdk

  2. Sehen Sie sich die USB-Host-Geräte im Qemu-Terminal an, indem Sie den folgenden Befehl ausführen.

    info usbhost

    Apple-Gerät wird hier wie folgt aufgeführt:

    Bus 3, Addr 8, Port 3, Speed 480 Mb/s Class 00: USB device, iPhone

  3. Fügen Sie das vom obigen Befehl zurückgegebene USB-Host-Gerät dem Gastsystem hinzu.

    device_add usb-host,hostbus=3,hostaddr=8,id=usb2.0,bus=ehci.0,port=3

Das Apple-Gerät wird jetzt auf dem Gastsystem angezeigt.

Diese Links haben geholfen: https://bugzilla.redhat.com/show_bug.cgi?id=949505 http://www.linux-kvm.org/page/USB_Host_Device_Assigned_to_Guest sccott vor 9 Jahren 0
Willkommen in der SU. Danke für deinen Beitrag! jáquer vor 9 Jahren 0
2
Patrick

Ich möchte die Lösung von sccott verbessern.

Ich habe dies an meinen qemu-Boot-Parameter angehängt, und der Vorteil ist, dass es mit der vendorid / productid übereinstimmt. Egal wo / wann das USB-Plugin installiert ist, es wird automatisch funktionieren.

-device usb-ehci,id=ehci -device usb-host,vendorid=0x05ac,productid=0x12a8,bus=ehci.0,port=1 

Kurze Erklärung zu jeder Flagge.

  • -device usb-ehci,id=ehci Erstellen Sie einen ehci USB-Controller, an den das Apple-Gerät angeschlossen werden kann.
  • -device usb-host,vendorid=0x05ac,productid=0x12a8USB-Gerät anhand seiner Hersteller-ID und Produkt-ID passieren. (Dies ist schwierig, da es eine ähnliche Syntax gibt -usbdevice host:05ac:12a8, die jedoch keine späteren Parameter benötigt
  • bus=ehci.0das Apple-Gerät an den USB 2.0-Hub angeschlossen. Wie Sccott sagte, wird dies die Warnung vor Geschwindigkeitsunterschieden beseitigen.
  • port=1 Das Apple-Gerät verfügt über mehrere USB-Anschlüsse von einer einzigen Adresse (USB-Kabel). Daher müssen Sie den ersten Anschluss für die Synchronisierung auswählen.