blob: 5a26d789ad4a14e6fc92bf611b817cb620ab6725 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
|
/** @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_
|