#include <Register/Amd/Msr.h>\r
#include <Register/Intel/SmramSaveStateMap.h>\r
#include <Library/VmgExitLib.h>\r
+#include <ConfidentialComputingGuestAttr.h>\r
\r
#include "Platform.h"\r
\r
// Check and perform SEV-ES initialization if required.\r
//\r
AmdSevEsInitialize ();\r
+\r
+ //\r
+ // Set the Confidential computing attr PCD to communicate which SEV\r
+ // technology is active.\r
+ //\r
+ if (MemEncryptSevSnpIsEnabled ()) {\r
+ PcdStatus = PcdSet64S (PcdConfidentialComputingGuestAttr, CCAttrAmdSevSnp);\r
+ } else if (MemEncryptSevEsIsEnabled ()) {\r
+ PcdStatus = PcdSet64S (PcdConfidentialComputingGuestAttr, CCAttrAmdSevEs);\r
+ } else {\r
+ PcdStatus = PcdSet64S (PcdConfidentialComputingGuestAttr, CCAttrAmdSev);\r
+ }\r
+\r
+ ASSERT_RETURN_ERROR (PcdStatus);\r
}\r