OvmfPkg/BaseMemEncryptSevLib: introduce MemEncryptSevClearMmioPageEncMask()
BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3275 The MemEncryptSevClearMmioPageEncMask() helper can be used for clearing the memory encryption mask for the Mmio region. The MemEncryptSevClearMmioPageEncMask() is a simplified version of MemEncryptSevClearPageEncMask() -- it does not flush the caches after clearing the page encryption mask. Cc: James Bottomley <jejb@linux.ibm.com> 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: Laszlo Ersek <lersek@redhat.com> Cc: Erdem Aktas <erdemaktas@google.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com> Signed-off-by: Brijesh Singh <brijesh.singh@amd.com> Message-Id: <20210519181949.6574-10-brijesh.singh@amd.com>
This commit is contained in:
committed by
mergify[bot]
parent
2b5b2ff04d
commit
901a9bfc3a
@@ -118,3 +118,36 @@ MemEncryptSevGetAddressRangeState (
|
||||
Length
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
This function clears memory encryption bit for the mmio region specified by
|
||||
BaseAddress and NumPages.
|
||||
|
||||
@param[in] Cr3BaseAddress Cr3 Base Address (if zero then use
|
||||
current CR3)
|
||||
@param[in] BaseAddress The physical address that is the start
|
||||
address of a mmio region.
|
||||
@param[in] NumPages The number of pages from start memory
|
||||
region.
|
||||
|
||||
@retval RETURN_SUCCESS The attributes were cleared for the
|
||||
memory region.
|
||||
@retval RETURN_INVALID_PARAMETER Number of pages is zero.
|
||||
@retval RETURN_UNSUPPORTED Clearing the memory encryption attribute
|
||||
is not supported
|
||||
**/
|
||||
RETURN_STATUS
|
||||
EFIAPI
|
||||
MemEncryptSevClearMmioPageEncMask (
|
||||
IN PHYSICAL_ADDRESS Cr3BaseAddress,
|
||||
IN PHYSICAL_ADDRESS BaseAddress,
|
||||
IN UINTN NumPages
|
||||
)
|
||||
{
|
||||
return InternalMemEncryptSevClearMmioPageEncMask (
|
||||
Cr3BaseAddress,
|
||||
BaseAddress,
|
||||
EFI_PAGES_TO_SIZE (NumPages)
|
||||
);
|
||||
|
||||
}
|
||||
|
Reference in New Issue
Block a user