TianoCore EDK2 master
Loading...
Searching...
No Matches
VariableStandaloneMm.c File Reference

Go to the source code of this file.

Functions

BOOLEAN VariableSmmIsPrimaryBufferValid (IN EFI_PHYSICAL_ADDRESS Buffer, IN UINT64 Length)
 
BOOLEAN VariableSmmIsNonPrimaryBufferValid (IN EFI_PHYSICAL_ADDRESS Buffer, IN UINT64 Length)
 
VOID VariableNotifySmmReady (VOID)
 
VOID VariableNotifySmmWriteReady (VOID)
 
EFI_STATUS EFIAPI VariableServiceInitialize (IN EFI_HANDLE ImageHandle, IN EFI_MM_SYSTEM_TABLE *MmSystemTable)
 
BOOLEAN VariableIsMorVariableLegitimate (VOID)
 

Detailed Description

Parts of the SMM/MM implementation that are specific to standalone MM

Copyright (c) 2011 - 2024, Intel Corporation. All rights reserved.
Copyright (c) 2018, Linaro, Ltd. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent

Definition in file VariableStandaloneMm.c.

Function Documentation

◆ VariableIsMorVariableLegitimate()

BOOLEAN VariableIsMorVariableLegitimate ( VOID  )

Whether the MOR variable is legitimate or not.

Return values
TRUEMOR Variable is legitimate.
FALSEMOR Variable in not legitimate.

Definition at line 111 of file VariableStandaloneMm.c.

◆ VariableNotifySmmReady()

VOID VariableNotifySmmReady ( VOID  )

Notify the system that the SMM variable driver is ready.

Definition at line 58 of file VariableStandaloneMm.c.

◆ VariableNotifySmmWriteReady()

VOID VariableNotifySmmWriteReady ( VOID  )

Notify the system that the SMM variable write driver is ready.

Definition at line 68 of file VariableStandaloneMm.c.

◆ VariableServiceInitialize()

EFI_STATUS EFIAPI VariableServiceInitialize ( IN EFI_HANDLE  ImageHandle,
IN EFI_MM_SYSTEM_TABLE MmSystemTable 
)

Variable service MM driver entry point.

Parameters
[in]ImageHandleA handle for the image that is initializing this driver
[in]MmSystemTableA pointer to the MM system table
Return values
EFI_SUCCESSVariable service successfully initialized.

Definition at line 96 of file VariableStandaloneMm.c.

◆ VariableSmmIsNonPrimaryBufferValid()

BOOLEAN VariableSmmIsNonPrimaryBufferValid ( IN EFI_PHYSICAL_ADDRESS  Buffer,
IN UINT64  Length 
)

This function checks if the buffer is valid per processor architecture and does not overlap with SMRAM.

Parameters
BufferThe buffer start address to be checked.
LengthThe buffer length to be checked.
Return values
TRUEThis buffer is valid per processor architecture and does not overlap with SMRAM.
FALSEThis buffer is not valid per processor architecture or overlaps with SMRAM.

Definition at line 46 of file VariableStandaloneMm.c.

◆ VariableSmmIsPrimaryBufferValid()

BOOLEAN VariableSmmIsPrimaryBufferValid ( IN EFI_PHYSICAL_ADDRESS  Buffer,
IN UINT64  Length 
)

This function checks if the Primary Buffer (CommBuffer) is valid.

Parameters
BufferThe buffer start address to be checked.
LengthThe buffer length to be checked.
Return values
TRUEThis buffer is valid.
FALSEThis buffer is not valid.

Definition at line 25 of file VariableStandaloneMm.c.