qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] OVMF, Q35 and USB keyboard/mouse


From: Alexander Graf
Subject: Re: [Qemu-devel] OVMF, Q35 and USB keyboard/mouse
Date: Thu, 11 Sep 2014 23:34:03 +0200


> Am 11.09.2014 um 22:46 schrieb Laszlo Ersek <address@hidden>:
> 
>> 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



reply via email to

[Prev in Thread] Current Thread [Next in Thread]