BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=4654 The Secure VM Service Module specification defines the interfaces needed to allow multi-VMPL level execution of an SEV-SNP guest. Define the SVSM related structures for the SVSM Calling Area as well as the SVSM CAA MSR. The SVSM CAA MSR is an MSR register that is reserved for software use and will not be implemented in hardware. Cc: Liming Gao <gaoliming@byosoft.com.cn> Cc: Michael D Kinney <michael.d.kinney@intel.com> Cc: Zhiguang Liu <zhiguang.liu@intel.com> Acked-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Tom Lendacky <thomas.lendacky@amd.com>
36 lines
772 B
C
36 lines
772 B
C
/** @file
|
|
MSR Definitions.
|
|
|
|
Provides defines for Machine Specific Registers(MSR) indexes. Data structures
|
|
are provided for MSRs that contain one or more bit fields. If the MSR value
|
|
returned is a single 32-bit or 64-bit value, then a data structure is not
|
|
provided for that MSR.
|
|
|
|
Copyright (c) 2024, Advanced Micro Devices. All rights reserved.<BR>
|
|
SPDX-License-Identifier: BSD-2-Clause-Patent
|
|
|
|
**/
|
|
|
|
#ifndef SVSM_MSR_H_
|
|
#define SVSM_MSR_H_
|
|
|
|
/**
|
|
Secure VM Service Module CAA register
|
|
|
|
**/
|
|
#define MSR_SVSM_CAA 0xc001f000
|
|
|
|
/**
|
|
MSR information returned for #MSR_SVSM_CAA
|
|
**/
|
|
typedef union {
|
|
struct {
|
|
UINT32 Lower32Bits;
|
|
UINT32 Upper32Bits;
|
|
} Bits;
|
|
|
|
UINT64 Uint64;
|
|
} MSR_SVSM_CAA_REGISTER;
|
|
|
|
#endif
|