[SeaBIOS] [seabios PATCH 1/2] seabios: build RSDT from XSDT

Paolo Bonzini pbonzini at redhat.com
Wed Jul 26 22:22:00 CEST 2017



----- Original Message -----
> From: "Michael S. Tsirkin" <mst at redhat.com>
> To: "Paolo Bonzini" <pbonzini at redhat.com>
> Cc: seabios at seabios.org, "Kevin O'Connor" <kevin at koconnor.net>, qemu-devel at nongnu.org, lersek at redhat.com,
> lists at philjordan.eu, imammedo at redhat.com, phil at philjordan.eu, programmingkidx at gmail.com, kraxel at redhat.com
> Sent: Wednesday, July 26, 2017 10:05:03 PM
> Subject: Re: [seabios PATCH 1/2] seabios: build RSDT from XSDT
> 
> On Wed, Jul 26, 2017 at 11:42:34AM +0200, Paolo Bonzini wrote:
> > Old operating systems would like to have a rev1 (ACPI 1.0) FADT, but
> > new operating systems would like to have rev3 (ACPI 2.0).
> > 
> > Since old operating systems do not know about XSDTs, the
> > solution is to point the RSDT to a rev1 FADT and the XSDT to a
> > rev3 FADT.
> > 
> > But, edk2 is not able to handle QEMU providing two FADTs and barfs when
> > it sees the second; edk2 subscribes to the view that the platform code
> > (meaning not only OVMF, but transitively QEMU's ACPI table builder)
> > should not handle such hacks; it's common edk2 code that should handle
> > FADT rev1 vs. rev3 and RSDT vs. XSDT.
> 
> What exactly does it do wrt RSDT?

It ignores the one produced by QEMU and builds it from scratch.  Same
for RSDP and XSDT.

Paolo



More information about the SeaBIOS mailing list