[edk2] [PATCH 0/5] OvmfPkg: support QEMU_LOADER_WRITE_POINTER

Laszlo Ersek posted 5 patches 7 years, 1 month ago
Failed in applying to current master (apply log)
OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxe.inf          |   2 +
OvmfPkg/AcpiPlatformDxe/QemuFwCfgAcpiPlatformDxe.inf |   2 +
OvmfPkg/AcpiPlatformDxe/AcpiPlatform.h               |  27 ++
OvmfPkg/AcpiPlatformDxe/QemuLoader.h                 |  36 +-
OvmfPkg/AcpiPlatformDxe/BootScript.c                 | 414 ++++++++++++++++++++
OvmfPkg/AcpiPlatformDxe/QemuFwCfgAcpi.c              | 245 +++++++++++-
6 files changed, 711 insertions(+), 15 deletions(-)
create mode 100644 OvmfPkg/AcpiPlatformDxe/BootScript.c
[edk2] [PATCH 0/5] OvmfPkg: support QEMU_LOADER_WRITE_POINTER
Posted by Laszlo Ersek 7 years, 1 month ago
This patch series adds support for the new WRITE_POINTER command of
QEMU's ACPI linker/loader.

The command's first use case is QEMU's implementation of the "Microsoft
Hyper-V Generation Counter" device (a.k.a. "VMGENID"). The latest
version of the QEMU patch series (v7) can be found at:

  [Qemu-devel] [PATCH v7 0/8] Add support for VM Generation ID
  msgid <cover.1487224954.git.ben@skyportsystems.com>
  http://lists.nongnu.org/archive/html/qemu-devel/2017-02/msg03456.html

The VMGENID device is publicly specified by Microsoft. Please find the
reference, and how QEMU implements the specification in cooperation with
guest firmware (OVMF and SeaBIOS), at:

  [Qemu-devel] [PATCH v7 2/8] docs: VM Generation ID device description
  msgid <6e7af53f114f4875fbb952fb047d9d91bba2634f.1487224954.git.ben@skyportsystems.com>
  http://lists.nongnu.org/archive/html/qemu-devel/2017-02/msg03459.html

The WRITE_POINTER command is a building block for this.

While minuscule tweaks are expected in v8 of the QEMU series, we have
finally stabilized the QEMU<->firmware interface, over a long and taxing
series of emails and patch set versions. I've successfully tested basic
VMGENID functionality (initial setup, guest memory contents, ACPI S3
suspend/resume, device status) with RHEL-7 and Windows Server 2012 R2
guests.

This series can be fetched from <https://github.com/lersek/edk2.git>,
branch "write_pointer".

Cc: Jordan Justen <jordan.l.justen@intel.com>
Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=359

Thanks
Laszlo

Laszlo Ersek (5):
  OvmfPkg/AcpiPlatformDxe: prepare for QEMU_LOADER_WRITE_POINTER
    definitions
  OvmfPkg/AcpiPlatformDxe: add QEMU_LOADER_WRITE_POINTER definitions
  OvmfPkg/AcpiPlatformDxe: rewrap license block in "QemuFwCfgAcpi.c"
  OvmfPkg/AcpiPlatformDxe: implement the QEMU_LOADER_WRITE_POINTER
    command
  OvmfPkg/AcpiPlatformDxe: replay QEMU_LOADER_WRITE_POINTER commands at
    S3

 OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxe.inf          |   2 +
 OvmfPkg/AcpiPlatformDxe/QemuFwCfgAcpiPlatformDxe.inf |   2 +
 OvmfPkg/AcpiPlatformDxe/AcpiPlatform.h               |  27 ++
 OvmfPkg/AcpiPlatformDxe/QemuLoader.h                 |  36 +-
 OvmfPkg/AcpiPlatformDxe/BootScript.c                 | 414 ++++++++++++++++++++
 OvmfPkg/AcpiPlatformDxe/QemuFwCfgAcpi.c              | 245 +++++++++++-
 6 files changed, 711 insertions(+), 15 deletions(-)
 create mode 100644 OvmfPkg/AcpiPlatformDxe/BootScript.c

-- 
2.9.3

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel