On Thu, Sep 11, 2014 at 06:40:38PM +0200, Paolo Bonzini wrote: > Il 11/09/2014 18:35, Gabriel L. Somlo ha scritto: > >> > Can you configure Chamaleon to avoid the boot prompt? > > Yes. After doing that, usb starts working once OS X is fully booted. > > > > Works with either piix or q35 just fine. > > > > Does this mean it's likely to be an OVMF uhci/ehci issue specific to Q35 ? > > (one from which Fedora can recover but OS X can't) ? > > Yes, that's my interpretation too. > > You did test an UHCI controller, I think, but I don't remember---did you > test an EHCI controller without companions, using something like > "-device ich9-usb-ehci1,id=myehci -device usb-keyboard,bus=myehci.0"?
Not only does that work (after applying Jan Vesely's 3-patch series from http://lists.nongnu.org/archive/html/qemu-devel/2014-09/msg02175.html), but my "regular" command line starts working as well, since now both keyboard and mouse get routed to ehci instead of uhci. > If that works, the issue would be specific to EHCI companion > controllers. If that doesn't work, there is at least a generic in the > EHCI driver---of course there could possibly be another in the companion > controllers, but I'd try getting EHCI alone to work. So, here's my command line again: bin/qemu-system-x86_64 -enable-kvm -m 2048 -cpu core2duo -smp 4,cores=2 \ -machine q35 -device ide-drive,bus=ide.2,drive=MacHDD \ -drive id=MacHDD,if=none,snapshot=on,file=./mac_10.9.img \ -device isa-applesmc,osk="our...Inc" \ -netdev user,id=usr0 -device e1000-82545em,netdev=usr0,id=vnet0 \ -usb -device usb-kbd -device usb-mouse \ [ -bios OVMF.fd | -kernel chameleon_boot ] With this, I was able to get a better idea what the problem is. With either OVMF or Chameleon, I still see UHCI 1..3 and EHCI in qtree, with the mouse and keyboard hanging off of EHCI. However, from inside the OS X guest's system profiler, I see a difference: With Chameleon (and SeaBIOS), I see all three UHCIs (with no attached devices), and EHCI (with the now-high-speed keyboard and mouse). With OVMF, I have EHCI with the high-speed (and working) keyboard+mouse, but ONLY ONE UHCI device (UHCI3). UHCI1 UHCI2 do not get detected. Obviously, since QEMU was routing the slow keyboard+mouse to UHCI1, which for some reason gets masked when OVMF is used, things weren't working. So now the question is, how come Fedora can find UHCI 1&2 on Q35+OVMF, but OS X can't, and what can we do to OVMF (and/or QEMU) to fix it. Obviously, Jan's patch set woud paper over the issue, as the keyboard and mouse would go to ehci, but there's still the issue of the disappearing UHCI's :) Thanks much, --Gabriel