/** @file | |
Internal library header. | |
Copyright (c) Microsoft Corporation. | |
SPDX-License-Identifier: BSD-2-Clause-Patent | |
**/ | |
#ifndef SMM_CORE_PERFORMANCE_LIB_INTERNAL_H_ | |
#define SMM_CORE_PERFORMANCE_LIB_INTERNAL_H_ | |
/** | |
Registers a callback to perform library actions needed at exit boot services. | |
@param[in] ExitBootServicesProtocolGuid The protocol GUID to register the callback for. | |
@retval EFI_SUCCESS The callback was registered successfully. | |
@retval Others An error occurred registering the callback. | |
**/ | |
EFI_STATUS | |
RegisterExitBootServicesCallback ( | |
IN CONST EFI_GUID *ExitBootServicesProtocolGuid | |
); | |
/** | |
Unregisters a callback to perform library actions needed at exit boot services. | |
@param[in] ExitBootServicesProtocolGuid The protocol GUID to unregister the callback for. | |
@retval EFI_SUCCESS The callback was unregistered successfully. | |
@retval Others An error occurred unregistering the callback. | |
**/ | |
EFI_STATUS | |
UnregisterExitBootServicesCallback ( | |
IN CONST EFI_GUID *ExitBootServicesProtocolGuid | |
); | |
/** | |
This is the Event call back function is triggered in MM to notify the Library | |
the system is entering runtime phase. | |
@param[in] Protocol Points to the protocol's unique identifier | |
@param[in] Interface Points to the interface instance | |
@param[in] Handle The handle on which the interface was installed | |
@retval EFI_SUCCESS SmmAtRuntimeCallBack runs successfully | |
**/ | |
EFI_STATUS | |
EFIAPI | |
SmmPerformanceLibExitBootServicesCallback ( | |
IN CONST EFI_GUID *Protocol, | |
IN VOID *Interface, | |
IN EFI_HANDLE Handle | |
); | |
#endif // SMM_CORE_PERFORMANCE_LIB_INTERNAL_H_ |