audk/OvmfPkg/AcpiPlatformDxe
Laszlo Ersek df73df138d OvmfPkg/AcpiPlatformDxe: replay QEMU_LOADER_WRITE_POINTER commands at S3
Ultimately, each QEMU_LOADER_WRITE_POINTER command creates a guest memory
reference in some QEMU device. When the virtual machine is reset, the
device willfully forgets the guest address, since the guest memory is
wholly invalidated during platform reset.

... Unless the reset is part of S3 resume. Then the guest memory is
preserved intact, and the firmware must reprogram those devices with the
original guest memory allocation addresses.

This patch accumulates the fw_cfg select, skip and write operations of
ProcessCmdWritePointer() in a validated / condensed form, and turns them
into an ACPI S3 Boot Script fragment at the very end of
InstallQemuFwCfgTables().

Cc: Jordan Justen <jordan.l.justen@intel.com>
Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=359
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
2017-02-21 13:10:42 +01:00
..
AcpiPlatform.c OvmfPkg: AcpiPlatformDxe: extract common entry point 2015-02-19 23:45:57 +00:00
AcpiPlatform.h OvmfPkg/AcpiPlatformDxe: replay QEMU_LOADER_WRITE_POINTER commands at S3 2017-02-21 13:10:42 +01:00
AcpiPlatformDxe.inf OvmfPkg/AcpiPlatformDxe: replay QEMU_LOADER_WRITE_POINTER commands at S3 2017-02-21 13:10:42 +01:00
BootScript.c OvmfPkg/AcpiPlatformDxe: replay QEMU_LOADER_WRITE_POINTER commands at S3 2017-02-21 13:10:42 +01:00
EntryPoint.c OvmfPkg: AcpiPlatformDxe: when PCI is enabled, wait for Platform BDS's cue 2016-03-23 17:39:35 +01:00
PciDecoding.c OvmfPkg: AcpiPlatformDxe: Don't enable unsupported PCI attributes 2016-04-19 13:18:34 +02:00
Qemu.c OvmfPkg/AcpiPlatformDxe: Split QEMU fw-cfg into a new file 2015-02-02 19:08:57 +00:00
QemuFwCfgAcpi.c OvmfPkg/AcpiPlatformDxe: replay QEMU_LOADER_WRITE_POINTER commands at S3 2017-02-21 13:10:42 +01:00
QemuFwCfgAcpiPlatform.c OvmfPkg: AcpiPlatformDxe: extract common entry point 2015-02-19 23:45:57 +00:00
QemuFwCfgAcpiPlatformDxe.inf OvmfPkg/AcpiPlatformDxe: replay QEMU_LOADER_WRITE_POINTER commands at S3 2017-02-21 13:10:42 +01:00
QemuLoader.h OvmfPkg/AcpiPlatformDxe: add QEMU_LOADER_WRITE_POINTER definitions 2017-02-21 13:10:33 +01:00
Xen.c OvmfPkg/AcpiPlatformDxe: Fix Visual Studio build issues 2012-08-09 23:27:05 +00:00