> Am 11.09.2014 um 22:46 schrieb Laszlo Ersek <ler...@redhat.com>: > >> On 09/11/14 22:16, Gabriel L. Somlo wrote: >>> 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 :) > > Please save the OVMF debug log, maybe we can catch something in it. > > -global isa-debugcon.iobase=0x402 -debugcon file:ovmf.log > > It could be also worthwhile to boot OVMF (not OSX, just OVMF) on both > i440fx and q35, with the otherwise same command line, and compare the > two debug logs.
XNU also populates its device tree based on the DSDT. Maybe there's a subtle difference there? Alex > > Thanks > Laszlo