[edk2-devel] [PATCH 00/13] Add GHCBv2 macro and helpers

Brijesh Singh brijesh.singh at amd.com
Fri May 7 20:38:25 UTC 2021


This series is taken from the SNP RFC. This series defines the GHCBv2
macros and NAE events. Additionally, it also introduces a helper to
clear the page encryption mask from the Mmio region.

The series is based on the commit:
 f297b7f20010 UnitTestFrameworkPkg: Sample unit test hangs when running in OVMF/QEMU 

Cc: James Bottomley <jejb at linux.ibm.com>
Cc: Min Xu <min.m.xu at intel.com>
Cc: Jiewen Yao <jiewen.yao at intel.com>
Cc: Tom Lendacky <thomas.lendacky at amd.com>
Cc: Jordan Justen <jordan.l.justen at intel.com>
Cc: Ard Biesheuvel <ardb+tianocore at kernel.org>
Cc: Laszlo Ersek <lersek at redhat.com>
Cc: Erdem Aktas <erdemaktas at google.com>
Cc: Michael D Kinney <michael.d.kinney at intel.com>
Cc: Liming Gao <gaoliming at byosoft.com.cn>
Cc: Zhiguang Liu <zhiguang.liu at intel.com>

Brijesh Singh (11):
  MdePkg/Register/Amd: expand the SEV MSR to include the SNP definition
  MdePkg/Amd: add white spaces to retain alignment for future expansion
  MdePkg/Register/Amd: define GHCB macros for hypervisor feature
    detection
  MdePkg/Register/Amd: define GHCB macro for Register GPA structure
  MdePkg/Register/Amd: define GHCB macro for the Page State Change
  MdePkg/BaseLib: add support for PVALIDATE instruction
  OvmfPkg/BaseMemEncryptSevLib: introduce
    MemEncryptSevClearMmioPageEncMask()
  OvmfPkg/AmdSevDxe: use MemEncryptSevClearMmioPageEncMask() to clear
    EncMask
  OvmfPkg/QemuFlashFvbServicesRuntimeDxe: use Mmio helper to clear enc
    mask
  OvmfPkg/TpmMmioSevDecryptPei: use MemEncryptSevClearMmioPageEncMask()
  OvmfPkg/BaseMemEncryptSevLib: remove Flush parameter

Tom Lendacky (2):
  MdePkg/Register/Amd: define GHCB macros for SNP AP creation
  MdePkg/BaseLib: add support for RMPADJUST instruction

 MdePkg/Library/BaseLib/BaseLib.inf            |   2 +
 MdePkg/Include/Library/BaseLib.h              |  80 ++++++++++++
 MdePkg/Include/Register/Amd/Fam17Msr.h        |  46 ++++++-
 MdePkg/Include/Register/Amd/Ghcb.h            | 123 +++++++++++++++++-
 OvmfPkg/Include/Library/MemEncryptSevLib.h    |  35 +++--
 .../BaseMemEncryptSevLib/X64/VirtualMemory.h  |  33 +++--
 OvmfPkg/AmdSevDxe/AmdSevDxe.c                 |  13 +-
 OvmfPkg/IoMmuDxe/AmdSevIoMmu.c                |   6 +-
 .../Ia32/MemEncryptSevLib.c                   |  41 ++++--
 .../X64/MemEncryptSevLib.c                    |  49 +++++--
 .../X64/PeiDxeVirtualMemory.c                 |  63 +++++++--
 .../X64/SecVirtualMemory.c                    |   8 +-
 .../SmmCpuFeaturesLib/SmmCpuFeaturesLib.c     |   3 +-
 OvmfPkg/PlatformPei/AmdSev.c                  |   3 +-
 .../FwBlockServiceDxe.c                       |   5 +-
 .../QemuFlashSmm.c                            |   5 +-
 .../TpmMmioSevDecryptPeim.c                   |   5 +-
 MdePkg/Include/X64/Nasm.inc                   |  16 +++
 MdePkg/Library/BaseLib/X64/Pvalidate.nasm     |  42 ++++++
 MdePkg/Library/BaseLib/X64/RmpAdjust.nasm     |  40 ++++++
 20 files changed, 526 insertions(+), 92 deletions(-)
 create mode 100644 MdePkg/Library/BaseLib/X64/Pvalidate.nasm
 create mode 100644 MdePkg/Library/BaseLib/X64/RmpAdjust.nasm

-- 
2.17.1



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#74823): https://edk2.groups.io/g/devel/message/74823
Mute This Topic: https://groups.io/mt/82665178/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-






More information about the edk2-devel-archive mailing list