I verified that the values align with the GHCB spec publication: #56421 Revision: 2.00
Reviewed-by: Erdem Aktas <erdemak...@google.com> -Erdem On Wed, May 12, 2021 at 4:46 PM Brijesh Singh <brijesh.si...@amd.com> wrote: > > BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3275 > > Version 2 of GHCB introduces advertisement of features that are supported > by the hypervisor. See the GHCB spec section 2.2 for an additional details. > > Cc: James Bottomley <j...@linux.ibm.com> > Cc: Min Xu <min.m...@intel.com> > Cc: Jiewen Yao <jiewen....@intel.com> > Cc: Tom Lendacky <thomas.lenda...@amd.com> > Cc: Jordan Justen <jordan.l.jus...@intel.com> > Cc: Ard Biesheuvel <ardb+tianoc...@kernel.org> > Cc: Laszlo Ersek <ler...@redhat.com> > Cc: Erdem Aktas <erdemak...@google.com> > Cc: Michael D Kinney <michael.d.kin...@intel.com> > Cc: Liming Gao <gaolim...@byosoft.com.cn> > Cc: Zhiguang Liu <zhiguang....@intel.com> > Reviewed-by: Laszlo Ersek <ler...@redhat.com> > Reviewed-by: Liming Gao <gaolim...@byosoft.com.cn> > Signed-off-by: Brijesh Singh <brijesh.si...@amd.com> > --- > MdePkg/Include/Register/Amd/Fam17Msr.h | 7 +++++++ > MdePkg/Include/Register/Amd/Ghcb.h | 8 ++++++++ > 2 files changed, 15 insertions(+) > > diff --git a/MdePkg/Include/Register/Amd/Fam17Msr.h > b/MdePkg/Include/Register/Amd/Fam17Msr.h > index 7368ce7af02a..cdb8f588ccf8 100644 > --- a/MdePkg/Include/Register/Amd/Fam17Msr.h > +++ b/MdePkg/Include/Register/Amd/Fam17Msr.h > @@ -48,6 +48,11 @@ typedef union { > UINT32 Reserved2:32; > } GhcbTerminate; > > + struct { > + UINT64 Function:12; > + UINT64 Features:52; > + } GhcbHypervisorFeatures; > + > VOID *Ghcb; > > UINT64 GhcbPhysicalAddress; > @@ -57,6 +62,8 @@ typedef union { > #define GHCB_INFO_SEV_INFO_GET 2 > #define GHCB_INFO_CPUID_REQUEST 4 > #define GHCB_INFO_CPUID_RESPONSE 5 > +#define GHCB_HYPERVISOR_FEATURES_REQUEST 128 > +#define GHCB_HYPERVISOR_FEATURES_RESPONSE 129 > #define GHCB_INFO_TERMINATE_REQUEST 256 > > #define GHCB_TERMINATE_GHCB 0 > diff --git a/MdePkg/Include/Register/Amd/Ghcb.h > b/MdePkg/Include/Register/Amd/Ghcb.h > index 712dc8e769c0..ec232ebd3807 100644 > --- a/MdePkg/Include/Register/Amd/Ghcb.h > +++ b/MdePkg/Include/Register/Amd/Ghcb.h > @@ -54,6 +54,7 @@ > #define SVM_EXIT_NMI_COMPLETE 0x80000003ULL > #define SVM_EXIT_AP_RESET_HOLD 0x80000004ULL > #define SVM_EXIT_AP_JUMP_TABLE 0x80000005ULL > +#define SVM_EXIT_HYPERVISOR_FEATURES 0x8000FFFDULL > #define SVM_EXIT_UNSUPPORTED 0x8000FFFFULL > > // > @@ -154,4 +155,11 @@ typedef union { > #define GHCB_EVENT_INJECTION_TYPE_EXCEPTION 3 > #define GHCB_EVENT_INJECTION_TYPE_SOFT_INT 4 > > +// > +// Hypervisor features > +// > +#define GHCB_HV_FEATURES_SNP BIT0 > +#define GHCB_HV_FEATURES_SNP_AP_CREATE > (GHCB_HV_FEATURES_SNP | BIT1) > +#define GHCB_HV_FEATURES_SNP_RESTRICTED_INJECTION > (GHCB_HV_FEATURES_SNP_AP_CREATE | BIT2) > +#define GHCB_HV_FEATURES_SNP_RESTRICTED_INJECTION_TIMER > (GHCB_HV_FEATURES_SNP_RESTRICTED_INJECTION | BIT3) > #endif > -- > 2.17.1 > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#75225): https://edk2.groups.io/g/devel/message/75225 Mute This Topic: https://groups.io/mt/82787286/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-