This patch series provides fixes for using TPM support with an SEV-ES guest.
The fixes include: - Decode ModRM byte for MOVZX and MOVSX opcodes. - Add MMIO support for MOV opcodes 0xA0-0xA3. - Create a new TPM MMIO ready PPI guid, gOvmfTpmMmioAccessiblePpiGuid - Mark TPM MMIO range as un-encrypted during PEI phase for an SEV-ES guest and install the TPM MMIO ready PPI guid. - Update the Tcg2Config Depex to ensure the new PEIM runs before the Tcg2Config PEIM BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3345 --- These patches are based on commit: ab957f036f67 ("BaseTools/Source/Python: New Target/ToolChain/Arch in DSC [BuildOptions]") Changes since: v2: - Update the TPM PEIM to only perform the mapping change when SEV-ES is active (with a comment in the code to explain why). - Update the TPM PEIM file header comment. - Updates to the INF file (INF_VERSION, Packages, LibraryClasses, etc.). - Updates to PEIM file order in DSC and FDF files. - Split out Tcg2Config Depex change to a separate patch. v1: - Create a TPM PEIM that will map the TPM address range as unencrypted and install a new PPI to indicate the mapping change is complete. Cc: Laszlo Ersek <ler...@redhat.com> Cc: Ard Biesheuvel <ardb+tianoc...@kernel.org> Cc: Jordan Justen <jordan.l.jus...@intel.com> Cc: Brijesh Singh <brijesh.si...@amd.com> Cc: Erdem Aktas <erdemak...@google.com> Cc: James Bottomley <j...@linux.ibm.com> Cc: Jiewen Yao <jiewen....@intel.com> Cc: Min Xu <min.m...@intel.com> Cc: Marc-André Lureau <marcandre.lur...@redhat.com> Cc: Stefan Berger <stef...@linux.ibm.com> Tom Lendacky (5): OvfmPkg/VmgExitLib: Properly decode MMIO MOVZX and MOVSX opcodes OvmfPkg/VmgExitLib: Add support for new MMIO MOV opcodes OvmfPkg: Define a new PPI GUID to signal TPM MMIO accessability OvmfPkg/Tcg2ConfigPei: Mark TPM MMIO range as unencrypted for SEV-ES OvmfPkg/Tcg2ConfigPei: Update Depex for IA32 and X64 OvmfPkg/OvmfPkg.dec | 4 + OvmfPkg/AmdSev/AmdSevX64.dsc | 1 + OvmfPkg/OvmfPkgIa32.dsc | 1 + OvmfPkg/OvmfPkgIa32X64.dsc | 1 + OvmfPkg/OvmfPkgX64.dsc | 1 + OvmfPkg/AmdSev/AmdSevX64.fdf | 1 + OvmfPkg/OvmfPkgIa32.fdf | 1 + OvmfPkg/OvmfPkgIa32X64.fdf | 1 + OvmfPkg/OvmfPkgX64.fdf | 1 + OvmfPkg/Tcg/Tcg2Config/Tcg2ConfigPei.inf | 2 +- OvmfPkg/Tcg/TpmMmioSevDecryptPei/TpmMmioSevDecryptPei.inf | 40 +++++++ OvmfPkg/Library/VmgExitLib/VmgExitVcHandler.c | 120 +++++++++++++++++++- OvmfPkg/Tcg/TpmMmioSevDecryptPei/TpmMmioSevDecryptPeim.c | 87 ++++++++++++++ 13 files changed, 258 insertions(+), 3 deletions(-) create mode 100644 OvmfPkg/Tcg/TpmMmioSevDecryptPei/TpmMmioSevDecryptPei.inf create mode 100644 OvmfPkg/Tcg/TpmMmioSevDecryptPei/TpmMmioSevDecryptPeim.c -- 2.31.0 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#74608): https://edk2.groups.io/g/devel/message/74608 Mute This Topic: https://groups.io/mt/82461176/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-