OvmfPkg: Update PlatformPei to support Tdx guest

RFC: https://bugzilla.tianocore.org/show_bug.cgi?id=3429

OvmfPkg/PlatformPei is updated to support Tdx guest. There are below
major changes.
 - Set Tdx related PCDs
 - Publish Tdx RamRegions

In this patch there is another new function BuildPlatformInfoHob ().
This function builds EFI_HOB_PLATFORM_INFO which contains the
HostBridgeDevId. The hob is built in both Td guest and Non-Td guest.

Cc: Ard Biesheuvel <ardb+tianocore@kernel.org>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Cc: Brijesh Singh <brijesh.singh@amd.com>
Cc: Erdem Aktas <erdemaktas@google.com>
Cc: James Bottomley <jejb@linux.ibm.com>
Cc: Jiewen Yao <jiewen.yao@intel.com>
Cc: Tom Lendacky <thomas.lendacky@amd.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>
Acked-by: Gerd Hoffmann <kraxel@redhat.com>
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com>
Signed-off-by: Min Xu <min.m.xu@intel.com>
This commit is contained in:
Min Xu
2022-01-20 11:04:17 +08:00
committed by mergify[bot]
parent e23f8f52fd
commit cf17156d7d
7 changed files with 104 additions and 3 deletions

View File

@@ -11,6 +11,7 @@
#include <IndustryStandard/E820.h>
#include <Library/PlatformInitLib.h>
#include <IndustryStandard/IntelTdx.h>
extern EFI_HOB_PLATFORM_INFO mPlatformInfoHob;
@@ -84,6 +85,24 @@ AmdSevInitialize (
VOID
);
/**
This Function checks if TDX is available, if present then it sets
the dynamic PCDs for Tdx guest. It also builds Guid hob which contains
the Host Bridge DevId.
**/
VOID
IntelTdxInitialize (
VOID
);
/**
* @brief Builds PlatformInfo Hob
*/
VOID
BuildPlatformInfoHob (
VOID
);
VOID
SevInitializeRam (
VOID