BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3582 Improve the MemEncryptSev{Es,Snp}IsEnabled() to use the SEV_STATUS MSR value saved in the workarea. Since workarea is valid until the PEI phase, so, for the Dxe phase use the PcdConfidentialComputingGuestAttr to determine which SEV technology is enabled. Cc: Min Xu <min.m.xu@intel.com> Cc: Jiewen Yao <jiewen.yao@intel.com> Cc: Tom Lendacky <thomas.lendacky@amd.com> Cc: Jordan Justen <jordan.l.justen@intel.com> Cc: Ard Biesheuvel <ardb+tianocore@kernel.org> Cc: Erdem Aktas <erdemaktas@google.com> Cc: Gerd Hoffmann <kraxel@redhat.com> Acked-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Brijesh Singh <brijesh.singh@amd.com> Acked-by: Jiewen Yao <jiewen.yao@intel.com>
62 lines
1.5 KiB
INI
62 lines
1.5 KiB
INI
## @file
|
|
# Library provides the helper functions for SEV guest
|
|
#
|
|
# Copyright (c) 2017 - 2020, Advanced Micro Devices. All rights reserved.<BR>
|
|
#
|
|
# SPDX-License-Identifier: BSD-2-Clause-Patent
|
|
#
|
|
#
|
|
##
|
|
|
|
[Defines]
|
|
INF_VERSION = 1.25
|
|
BASE_NAME = DxeMemEncryptSevLib
|
|
FILE_GUID = c1594631-3888-4be4-949f-9c630dbc842b
|
|
MODULE_TYPE = BASE
|
|
VERSION_STRING = 1.0
|
|
LIBRARY_CLASS = MemEncryptSevLib|DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SMM_DRIVER UEFI_DRIVER
|
|
|
|
#
|
|
# The following information is for reference only and not required by the build
|
|
# tools.
|
|
#
|
|
# VALID_ARCHITECTURES = IA32 X64
|
|
#
|
|
|
|
[Packages]
|
|
MdeModulePkg/MdeModulePkg.dec
|
|
MdePkg/MdePkg.dec
|
|
OvmfPkg/OvmfPkg.dec
|
|
UefiCpuPkg/UefiCpuPkg.dec
|
|
|
|
[Sources]
|
|
DxeMemEncryptSevLibInternal.c
|
|
PeiDxeMemEncryptSevLibInternal.c
|
|
|
|
[Sources.X64]
|
|
X64/DxeSnpSystemRamValidate.c
|
|
X64/MemEncryptSevLib.c
|
|
X64/PeiDxeVirtualMemory.c
|
|
X64/SnpPageStateChangeInternal.c
|
|
X64/VirtualMemory.c
|
|
X64/VirtualMemory.h
|
|
|
|
[Sources.IA32]
|
|
Ia32/MemEncryptSevLib.c
|
|
|
|
[LibraryClasses]
|
|
BaseLib
|
|
CacheMaintenanceLib
|
|
CpuLib
|
|
DebugLib
|
|
MemoryAllocationLib
|
|
PcdLib
|
|
VmgExitLib
|
|
|
|
[FeaturePcd]
|
|
gUefiOvmfPkgTokenSpaceGuid.PcdSmmSmramRequire
|
|
|
|
[Pcd]
|
|
gEfiMdeModulePkgTokenSpaceGuid.PcdPteMemoryEncryptionAddressOrMask
|
|
gEfiMdePkgTokenSpaceGuid.PcdConfidentialComputingGuestAttr
|