iPod Touch 5G não reconhecerá no qemu Windows 7 VM

4

Eu tenho um iPod Touch 5G e uma VM do Windows 7. Estou tentando passar pelo iPod Touch para a VM para que o Windows possa reconhecê-lo, mas estou recebendo o seguinte erro no monitor do qemu.

(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)
    
por ipatch 24.10.2014 / 02:15

2 respostas

6

Depois de passar dois ou três dias nisso, descobri a solução para isso. O software realmente de código aberto precisa desenvolver uma documentação melhor sobre como usar o software!

O aviso de incompatibilidade de velocidade usb acima é acionado porque estamos carregando drivers de controladores de host usb mais antigos (usb-bus = usb1.x), enquanto os dispositivos são usb2.x / usb-ehci ou usb3.x / usb-xhci. Portanto, a incompatibilidade de velocidade usb ocorre.

  1. Carregue os controladores host usb junto com o comando 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. Veja os dispositivos host usb no terminal qemu executando o comando abaixo.

    info usbhost

    O dispositivo da Apple será listado aqui, como abaixo:

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

  3. Adicione o dispositivo host USB retornado do comando acima para o sistema convidado.

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

Agora, o dispositivo da Apple aparecerá no sistema convidado.

    
por 18.12.2014 / 02:39
2

Eu gostaria de melhorar a solução do sccott.

Eu adicionei isso no meu parâmetro de inicialização do qemu, e a vantagem é que ele é compatível com o vendorid / productid, então não importa onde / quando o usb é plugin, ele funcionará automaticamente.

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

Breve explicação sobre cada bandeira.

  • -device usb-ehci,id=ehci cria um controlador usb ehci que o dispositivo Apple pode anexar.
  • -device usb-host,vendorid=0x05ac,productid=0x12a8 passa pelo dispositivo usb por seu ID de fornecedor e ID do produto. (Este é um truque, porque existe uma sintaxe similar -usbdevice host:05ac:12a8 mas isso não demorará mais tarde nos parâmetros
  • bus=ehci.0 anexou o dispositivo da Apple ao hub USB2.0. Como o Sccott disse, isso eliminará o aviso de incompatibilidade de velocidade.
  • O dispositivo port=1 apple tem várias portas USB do endereço único (cabo usb), portanto, precisamos selecionar a primeira porta para fins de sincronização.
por 18.10.2015 / 07:32