TianoCore EDK2 master
|
#include <PiSmm.h>
Go to the source code of this file.
Functions | |
EFI_STATUS EFIAPI | SmiHandlerProfileRegisterHandler (IN EFI_GUID *HandlerGuid, IN EFI_SMM_HANDLER_ENTRY_POINT2 Handler, IN PHYSICAL_ADDRESS CallerAddress, IN VOID *Context OPTIONAL, IN UINTN ContextSize OPTIONAL) |
EFI_STATUS EFIAPI | SmiHandlerProfileUnregisterHandler (IN EFI_GUID *HandlerGuid, IN EFI_SMM_HANDLER_ENTRY_POINT2 Handler, IN VOID *Context OPTIONAL, IN UINTN ContextSize OPTIONAL) |
Provides services to log the SMI handler registration.
This API provides services for the SMM Child Dispatch Protocols provider, to register SMI handler information to SmmCore.
NOTE: There is no need to update the consumers of SMST->SmiHandlerRegister() or the consumers of SMM Child Dispatch Protocols. The SmmCore (who produces SMST) should have ability to register such information directly. The SmmChildDispatcher (who produces SMM Child Dispatch Protocols) should be responsible to call the services to register information to SMM Core.
Copyright (c) 2017, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent
Definition in file SmiHandlerProfileLib.h.
EFI_STATUS EFIAPI SmiHandlerProfileRegisterHandler | ( | IN EFI_GUID * | HandlerGuid, |
IN EFI_SMM_HANDLER_ENTRY_POINT2 | Handler, | ||
IN PHYSICAL_ADDRESS | CallerAddress, | ||
IN VOID *Context | OPTIONAL, | ||
IN UINTN ContextSize | OPTIONAL | ||
) |
This function is called by SmmChildDispatcher module to report a new SMI handler is registered, to SmmCore.
HandlerGuid | The GUID to identify the type of the handler. For the SmmChildDispatch protocol, the HandlerGuid must be the GUID of SmmChildDispatch protocol. |
Handler | The SMI handler. |
CallerAddress | The address of the module who registers the SMI handler. |
Context | The context of the SMI handler. For the SmmChildDispatch protocol, the Context must match the one defined for SmmChildDispatch protocol. |
ContextSize | The size of the context in bytes. For the SmmChildDispatch protocol, the Context must match the one defined for SmmChildDispatch protocol. |
EFI_SUCCESS | The information is recorded. |
EFI_UNSUPPORTED | The feature is unsupported. |
EFI_OUT_OF_RESOURCES | There is no enough resource to record the information. |
Definition at line 39 of file MmSmiHandlerProfileLib.c.
EFI_STATUS EFIAPI SmiHandlerProfileUnregisterHandler | ( | IN EFI_GUID * | HandlerGuid, |
IN EFI_SMM_HANDLER_ENTRY_POINT2 | Handler, | ||
IN VOID *Context | OPTIONAL, | ||
IN UINTN ContextSize | OPTIONAL | ||
) |
This function is called by SmmChildDispatcher module to report an existing SMI handler is unregistered, to SmmCore.
HandlerGuid | The GUID to identify the type of the handler. For the SmmChildDispatch protocol, the HandlerGuid must be the GUID of SmmChildDispatch protocol. |
Handler | The SMI handler. |
Context | The context of the SMI handler. If it is NOT NULL, it will be used to check what is registered. |
ContextSize | The size of the context in bytes. If Context is NOT NULL, it will be used to check what is registered. |
EFI_SUCCESS | The original record is removed. |
EFI_UNSUPPORTED | The feature is unsupported. |
EFI_NOT_FOUND | There is no record for the HandlerGuid and handler. |
Definition at line 73 of file MmSmiHandlerProfileLib.c.