summaryrefslogtreecommitdiff
path: root/MdePkg/Include/Protocol/SmmBase.h
diff options
context:
space:
mode:
Diffstat (limited to 'MdePkg/Include/Protocol/SmmBase.h')
-rw-r--r--MdePkg/Include/Protocol/SmmBase.h146
1 files changed, 72 insertions, 74 deletions
diff --git a/MdePkg/Include/Protocol/SmmBase.h b/MdePkg/Include/Protocol/SmmBase.h
index 6dd3a5dd57..664e34c9e6 100644
--- a/MdePkg/Include/Protocol/SmmBase.h
+++ b/MdePkg/Include/Protocol/SmmBase.h
@@ -40,14 +40,12 @@ typedef struct _EFI_SMM_BASE_PROTOCOL EFI_SMM_BASE_PROTOCOL;
/**
Entry Point to Callback service
- @param SmmImageHandle A handle allocated by the SMM infrastructure code
- to uniquely designate a specific DXE SMM driver.
-
- @param CommunicationBuffer A pointer to a collection of data in memory
- that will be conveyed from a non-SMM environment into an SMM environment.
- The buffer must be contiguous, physically mapped, and be a physical address.
-
- @param SourceSize The size of the CommunicationBuffer.
+ @param SmmImageHandle A handle allocated by the SMM infrastructure code
+ to uniquely designate a specific DXE SMM driver.
+ @param CommunicationBuffer A pointer to a collection of data in memory
+ that will be conveyed from a non-SMM environment into an SMM environment.
+ The buffer must be contiguous, physically mapped, and be a physical address.
+ @param SourceSize The size of the CommunicationBuffer.
@return Status code
@@ -67,20 +65,20 @@ EFI_STATUS
Register a given driver into SMRAM.This is the equivalent of performing
the LoadImage/StartImage into System Management Mode.
- @param This Protocol instance pointer.
- @param FilePath Location of the image to be installed as the handler.
- @param SourceBuffer Optional source buffer in case of the image file
- being in memory.
- @param SourceSize Size of the source image file, if in memory.
- @param ImageHandle Pointer to the handle that reflects the driver
- loaded into SMM.
- @param LegacyIA32Binary The binary image to load is legacy 16 bit code.
-
- @retval EFI_SUCCESS The operation was successful.
- @retval EFI_OUT_OF_RESOURCES There were no additional SMRAM resources to load the handler
- @retval EFI_UNSUPPORTED This platform does not support 16-bit handlers.
- @retval EFI_UNSUPPORTED In runtime.
- @retval EFI_INVALID_PARAMETER The handlers was not the correct image type
+ @param This Protocol instance pointer.
+ @param FilePath Location of the image to be installed as the handler.
+ @param SourceBuffer Optional source buffer in case of the image file
+ being in memory.
+ @param SourceSize Size of the source image file, if in memory.
+ @param ImageHandle Pointer to the handle that reflects the driver
+ loaded into SMM.
+ @param LegacyIA32Binary The binary image to load is legacy 16 bit code.
+
+ @retval EFI_SUCCESS The operation was successful.
+ @retval EFI_OUT_OF_RESOURCES There were no additional SMRAM resources to load the handler
+ @retval EFI_UNSUPPORTED This platform does not support 16-bit handlers.
+ @retval EFI_UNSUPPORTED In runtime.
+ @retval EFI_INVALID_PARAMETER The handlers was not the correct image type
**/
typedef
@@ -99,13 +97,13 @@ EFI_STATUS
Remove a given driver SMRAM. This is the equivalent of performing
the UnloadImage System Management Mode.
- @param This Protocol instance pointer.
- @param ImageHandle Pointer to the handle that reflects the driver
- loaded into SMM.
+ @param This Protocol instance pointer.
+ @param ImageHandle Pointer to the handle that reflects the driver
+ loaded into SMM.
- @retval EFI_SUCCESS The operation was successful
- @retval EFI_INVALID_PARAMETER The handler did not exist
- @retval EFI_UNSUPPORTED In runtime.
+ @retval EFI_SUCCESS The operation was successful
+ @retval EFI_INVALID_PARAMETER The handler did not exist
+ @retval EFI_UNSUPPORTED In runtime.
**/
typedef
@@ -122,14 +120,14 @@ EFI_STATUS
EFI service. The BASE protocol driver is responsible for doing
any of the copies such that the data lives in boot-service accessible RAM.
- @param This Protocol instance pointer.
- @param ImageHandle Pointer to the handle that reflects the driver
- loaded into SMM.
- @param CommunicationBuffer Pointer to the buffer to convey into SMRAM.
- @param SourceSize Size of the contents of buffer..
+ @param This Protocol instance pointer.
+ @param ImageHandle Pointer to the handle that reflects the driver
+ loaded into SMM.
+ @param CommunicationBuffer Pointer to the buffer to convey into SMRAM.
+ @param SourceSize Size of the contents of buffer..
- @retval EFI_SUCCESS The message was successfully posted
- @retval EFI_INVALID_PARAMETER The buffer was NULL
+ @retval EFI_SUCCESS The message was successfully posted
+ @retval EFI_INVALID_PARAMETER The buffer was NULL
**/
typedef
@@ -146,21 +144,21 @@ EFI_STATUS
Register a callback to execute within SMM.
This allows receipt of messages created with the Boot Service COMMUNICATE.
- @param This Protocol instance pointer.
- @param CallbackAddress Address of the callback service
- @param MakeFirst If present, will stipulate that the handler is posted
- to be the first module executed in the dispatch table.
- @param MakeLast If present, will stipulate that the handler is posted
- to be last executed in the dispatch table.
- @param FloatingPointSave This is an optional parameter which informs the
- EFI_SMM_ACCESS_PROTOCOL Driver core if it needs to save
- the floating point register state. If any of the handlers
- require this, then the state will be saved for all of the handlers.
-
- @retval EFI_SUCCESS The operation was successful
- @retval EFI_OUT_OF_RESOURCES Not enough space in the dispatch queue
- @retval EFI_UNSUPPORTED In runtime.
- @retval EFI_UNSUPPORTED Not in SMM.
+ @param This Protocol instance pointer.
+ @param CallbackAddress Address of the callback service
+ @param MakeFirst If present, will stipulate that the handler is posted
+ to be the first module executed in the dispatch table.
+ @param MakeLast If present, will stipulate that the handler is posted
+ to be last executed in the dispatch table.
+ @param FloatingPointSave This is an optional parameter which informs the
+ EFI_SMM_ACCESS_PROTOCOL Driver core if it needs to save
+ the floating point register state. If any of the handlers
+ require this, then the state will be saved for all of the handlers.
+
+ @retval EFI_SUCCESS The operation was successful
+ @retval EFI_OUT_OF_RESOURCES Not enough space in the dispatch queue
+ @retval EFI_UNSUPPORTED In runtime.
+ @retval EFI_UNSUPPORTED Not in SMM.
**/
typedef
@@ -180,18 +178,18 @@ EFI_STATUS
by Buffer. This function allocates pages from EFI SMRAM Memory as needed to grow the
requested pool type. All allocations are eight-byte aligned.
- @param This Protocol instance pointer.
- @param PoolType The type of pool to allocate.
- The only supported type is EfiRuntimeServicesData;
- the interface will internally map this runtime request to SMRAM.
- @param Size The number of bytes to allocate from the pool.
- @param Buffer A pointer to a pointer to the allocated buffer if the call
- succeeds; undefined otherwise.
+ @param This Protocol instance pointer.
+ @param PoolType The type of pool to allocate.
+ The only supported type is EfiRuntimeServicesData;
+ the interface will internally map this runtime request to SMRAM.
+ @param Size The number of bytes to allocate from the pool.
+ @param Buffer A pointer to a pointer to the allocated buffer if the call
+ succeeds; undefined otherwise.
- @retval EFI_SUCCESS The requested number of bytes was allocated.
- @retval EFI_OUT_OF_RESOURCES The pool requested could not be allocated.
- @retval EFI_INVALID_PARAMETER PoolType was invalid.
- @retval EFI_UNSUPPORTED In runtime.
+ @retval EFI_SUCCESS The requested number of bytes was allocated.
+ @retval EFI_OUT_OF_RESOURCES The pool requested could not be allocated.
+ @retval EFI_INVALID_PARAMETER PoolType was invalid.
+ @retval EFI_UNSUPPORTED In runtime.
**/
typedef
@@ -209,12 +207,12 @@ EFI_STATUS
On return, the memory's type is EFI SMRAM Memory. The Buffer that is freed must
have been allocated by SmmAllocatePool().
- @param This Protocol instance pointer.
- @param Buffer Pointer to the buffer allocation.
+ @param This Protocol instance pointer.
+ @param Buffer Pointer to the buffer allocation.
- @retval EFI_SUCCESS The memory was returned to the system.
- @retval EFI_INVALID_PARAMETER Buffer was invalid.
- @retval EFI_UNSUPPORTED In runtime.
+ @retval EFI_SUCCESS The memory was returned to the system.
+ @retval EFI_INVALID_PARAMETER Buffer was invalid.
+ @retval EFI_UNSUPPORTED In runtime.
**/
typedef
@@ -228,10 +226,10 @@ EFI_STATUS
/**
This routine tells caller if execution context is SMM or not.
- @param This Protocol instance pointer.
- @param InSmm Whether the caller is inside SMM for IA-32 or servicing a PMI for the Itanium processor family.
+ @param This Protocol instance pointer.
+ @param InSmm Whether the caller is inside SMM for IA-32 or servicing a PMI for the Itanium processor family.
- @retval EFI_SUCCESS The operation was successful
+ @retval EFI_SUCCESS The operation was successful
**/
typedef
@@ -248,12 +246,12 @@ EFI_STATUS
location of the SMST in its entry point and then cache it in some driver
global variable so that the SMST can be invoked in subsequent callbacks.
- @param This Protocol instance pointer.
- @param Smst Pointer to the SMST.
+ @param This Protocol instance pointer.
+ @param Smst Pointer to the SMST.
- @retval EFI_SUCCESS The operation was successful
- @retval EFI_INVALID_PARAMETER Smst was invalid.
- @retval EFI_UNSUPPORTED Not in SMM.
+ @retval EFI_SUCCESS The operation was successful
+ @retval EFI_INVALID_PARAMETER Smst was invalid.
+ @retval EFI_UNSUPPORTED Not in SMM.
**/
typedef