On 08/29/14 00:41, Gabriel L. Somlo wrote: > On Thu, Aug 28, 2014 at 10:37:17PM +0200, Laszlo Ersek wrote: >>> >>> OvmfPkg/Library/AcpiTimerLib: Access power mgmt regs based on host bridge >>> type >>> >>> Pick the appropriate bus:dev.fn for accessing ACPI power management >>> registers (00:01.3 on PIIX4 vs. 00:1f.0 on Q35) based on the DID of >>> the host bridge (assumed always present at 00:00.0). >>> >>> With this patch, OVMF can boot QEMU's "-machine q35" x86 machine type. >>> >>> Contributed-under: TianoCore Contribution Agreement 1.0 >>> Signed-off-by: Gabriel Somlo <[email protected]> >>> --- >>> >>> I can boot Fedora20 Live with this patch applied on top of Reza's >>> SATA series: >>> >>> http://sourceforge.net/p/edk2/mailman/message/32743992/ >>> >>> using the following command line: >>> >>> bin/qemu-system-x86_64 -machine q35 \ >>> -device ide-drive,bus=ide.2,drive=HDC \ >>> -drive >>> id=HDC,if=none,snapshot=on,file=Fedora-Live-Desktop-x86_64-20-1.iso \ >>> -enable-kvm -m 2048 -usb -device usb-kbd -device usb-mouse \ >>> -bios OVMF.fd >>> >>> Any comments/suggestions/feedback much appreciated. >>> >>> Thanks much, >>> Gabriel >>> >>> [...] >> >> If you had been in #edk2 on OFTC I'd have told you "I've added this to >> my queue, but don't hold your breath". Since you weren't, I must say so >> in email :) >> >> (Hint, hint... :)) > > Fired off the email as I was walking out the door, but I get your > hint :) > > In terms of holding my breath, one thing I wish for would be a way > to save the host bridge DID after the first constructor call (I > counted, and the constructor gets called at least 16 times :) > > But I remember reading somewhere that globals are frowned upon, so > not sure *where* I'd store the DID (or better, the PMBA and PMREGMISC > register addresses) for future reference, after the first time I > figure out whether it's a PIIX4 or Q35...
You're looking for commit d3a24ff5. When the library is linked into OVMF's SEC (which is not the default case, but a possible one), then the lib becomes part of code that runs from persistent, read-only flash. So, don't mind those PCI reads that much :) Thanks Laszlo ------------------------------------------------------------------------------ Slashdot TV. Video for Nerds. Stuff that matters. http://tv.slashdot.org/ _______________________________________________ edk2-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/edk2-devel
