TianoCore EDK2 master
Loading...
Searching...
No Matches
BaseMemoryEncryptionNull.c File Reference
#include <Uefi.h>
#include <Uefi/UefiBaseType.h>
#include <Library/BaseLib.h>
#include <Library/MemEncryptTdxLib.h>

Go to the source code of this file.

Functions

BOOLEAN EFIAPI MemEncryptTdxIsEnabled (VOID)
 
RETURN_STATUS EFIAPI MemEncryptTdxSetPageSharedBit (IN PHYSICAL_ADDRESS Cr3BaseAddress, IN PHYSICAL_ADDRESS BaseAddress, IN UINTN NumPages)
 
RETURN_STATUS EFIAPI MemEncryptTdxClearPageSharedBit (IN PHYSICAL_ADDRESS Cr3BaseAddress, IN PHYSICAL_ADDRESS BaseAddress, IN UINTN NumPages)
 

Detailed Description

Virtual Memory Management Services to set or clear the memory encryption

Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.
Copyright (c) 2017, AMD Incorporated. All rights reserved.

SPDX-License-Identifier: BSD-2-Clause-Patent

Code is derived from MdeModulePkg/Core/DxeIplPeim/X64/VirtualMemory.c

Definition in file BaseMemoryEncryptionNull.c.

Function Documentation

◆ MemEncryptTdxClearPageSharedBit()

RETURN_STATUS EFIAPI MemEncryptTdxClearPageSharedBit ( IN PHYSICAL_ADDRESS  Cr3BaseAddress,
IN PHYSICAL_ADDRESS  BaseAddress,
IN UINTN  NumPages 
)

This function sets memory encryption bit for the memory region specified by BaseAddress and NumPages from the current page table context.

Parameters
[in]Cr3BaseAddressCr3 Base Address (if zero then use current CR3)
[in]BaseAddressThe physical address that is the start address of a memory region.
[in]NumPagesThe number of pages from start memory region.
Return values
RETURN_SUCCESSThe attributes were set for the memory region.
RETURN_INVALID_PARAMETERNumber of pages is zero.
RETURN_UNSUPPORTEDSetting the memory encryption attribute is not supported

Definition at line 83 of file BaseMemoryEncryptionNull.c.

◆ MemEncryptTdxIsEnabled()

BOOLEAN EFIAPI MemEncryptTdxIsEnabled ( VOID  )

Returns boolean to indicate whether to indicate which, if any, memory encryption is enabled

Parameters
[in]TypeBitmask of encryption technologies to check is enabled
Return values
TRUEThe encryption type(s) are enabled
FALSEThe encryption type(s) are not enabled

Definition at line 29 of file BaseMemoryEncryptionNull.c.

◆ MemEncryptTdxSetPageSharedBit()

RETURN_STATUS EFIAPI MemEncryptTdxSetPageSharedBit ( IN PHYSICAL_ADDRESS  Cr3BaseAddress,
IN PHYSICAL_ADDRESS  BaseAddress,
IN UINTN  NumPages 
)

This function clears memory encryption bit for the memory region specified by BaseAddress and NumPages from the current page table context.

Parameters
[in]Cr3BaseAddressCr3 Base Address (if zero then use current CR3)
[in]BaseAddressThe physical address that is the start address of a memory region.
[in]NumPagesThe number of pages from start memory region.
Return values
RETURN_SUCCESSThe attributes were cleared for the memory region.
RETURN_INVALID_PARAMETERNumber of pages is zero.
RETURN_UNSUPPORTEDClearing the memory encryption attribute is not supported

Definition at line 55 of file BaseMemoryEncryptionNull.c.