qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] synching GPE0_BLK between OVMF and qemu


From: Laszlo Ersek
Subject: Re: [Qemu-devel] synching GPE0_BLK between OVMF and qemu
Date: Fri, 27 Apr 2012 19:24:48 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:10.0.3) Gecko/20120307 Thunderbird/10.0.3

On 04/27/12 17:12, Jordan Justen wrote:
> On Fri, Apr 27, 2012 at 07:31, Laszlo Ersek <address@hidden> wrote:

>> edk2's "OvmfPkg/AcpiTables/Platform.h" specifies GPE0_BLK at 0x40C,
>> while qemu's "hw/acpi_piix4.c" expects the guest to access it at 0xAFE0.
>> Which macro should be modified to get them in sync?
> 
> Do they need to be in sync?

It appears to me so:

https://bugzilla.redhat.com/show_bug.cgi?id=653382#c22

> We set PBMA to 0x400 in OvmfPkg/Library/AcpiTimerLib/AcpiTimerLib.c,
> so isn't 0x40c correct?

Considering OVMF in isolation, I presume it's self-consistent.

However, is it necessary (a) to group these ACPI registers closely
together, (b) to base the "group" at 0x400?

>From "5.2.9 Fixed ACPI Description Table (FADT)" in the ACPI spec (v5.0)
it would appear OVMF can freely choose where to put GPE0_BLK, in both
senses (ie. port address considered alone, and also in relation to the
other ACPI registers).

Considering SeaBIOS again (build_fadt()):
- PORT_ACPI_PM_BASE is 0xb000,
- PM1a_EVT_BLK, PM1a_CNT_BLK and PM_TMR_BLK are located consecutively
from this base,
- but GPE0_BLK is placed at 0xafe0 (build_fadt() -->
pci_init_device(fadt_init_tbl) --> piix4_fadt_init())

But I'm likely missing something ^W everything...

Thanks!
Laszlo



reply via email to

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