|
#define | PERFORMANCE_PROPERTY_REVISION 0x1 |
|
#define | PEI_PERFORMANCE_STRING_SIZE 8 |
|
#define | PEI_PERFORMANCE_STRING_LENGTH (PEI_PERFORMANCE_STRING_SIZE - 1) |
|
#define | PERFORMANCE_PROTOCOL_GUID { 0x76b6bdfa, 0x2acd, 0x4462, { 0x9E, 0x3F, 0xcb, 0x58, 0xC9, 0x69, 0xd9, 0x37 } } |
|
#define | PERFORMANCE_EX_PROTOCOL_GUID { 0x1ea81bec, 0xf01a, 0x4d98, { 0xa2, 0x1, 0x4a, 0x61, 0xce, 0x2f, 0xc0, 0x22 } } |
|
#define | DXE_PERFORMANCE_STRING_SIZE 32 |
|
#define | DXE_PERFORMANCE_STRING_LENGTH (DXE_PERFORMANCE_STRING_SIZE - 1) |
|
#define | INIT_DXE_GAUGE_DATA_ENTRIES 800 |
|
#define | SMM_PERFORMANCE_PROTOCOL_GUID { 0xf866226a, 0xeaa5, 0x4f5a, { 0xa9, 0xa, 0x6c, 0xfb, 0xa5, 0x7c, 0x58, 0x8e } } |
|
#define | SMM_PERFORMANCE_EX_PROTOCOL_GUID { 0x931fc048, 0xc71d, 0x4455, { 0x89, 0x30, 0x47, 0x6, 0x30, 0xe3, 0xe, 0xe5 } } |
|
#define | SMM_PERFORMANCE_STRING_SIZE 32 |
|
#define | SMM_PERFORMANCE_STRING_LENGTH (SMM_PERFORMANCE_STRING_SIZE - 1) |
|
#define | INIT_SMM_GAUGE_DATA_ENTRIES 200 |
|
#define | SMM_PERF_FUNCTION_GET_GAUGE_ENTRY_NUMBER 1 |
|
#define | SMM_PERF_FUNCTION_GET_GAUGE_DATA 2 |
|
|
typedef struct
_PERFORMANCE_PROTOCOL | PERFORMANCE_PROTOCOL |
|
typedef struct
_PERFORMANCE_EX_PROTOCOL | PERFORMANCE_EX_PROTOCOL |
|
typedef EFI_STATUS(EFIAPI * | PERFORMANCE_START_GAUGE )(IN CONST VOID *Handle, IN CONST CHAR8 *Token, IN CONST CHAR8 *Module, IN UINT64 TimeStamp) |
|
typedef EFI_STATUS(EFIAPI * | PERFORMANCE_END_GAUGE )(IN CONST VOID *Handle, IN CONST CHAR8 *Token, IN CONST CHAR8 *Module, IN UINT64 TimeStamp) |
|
typedef EFI_STATUS(EFIAPI * | PERFORMANCE_GET_GAUGE )(IN UINTN LogEntryKey, OUT GAUGE_DATA_ENTRY **GaugeDataEntry) |
|
typedef EFI_STATUS(EFIAPI * | PERFORMANCE_START_GAUGE_EX )(IN CONST VOID *Handle, IN CONST CHAR8 *Token, IN CONST CHAR8 *Module, IN UINT64 TimeStamp, IN UINT32 Identifier) |
|
typedef EFI_STATUS(EFIAPI * | PERFORMANCE_END_GAUGE_EX )(IN CONST VOID *Handle, IN CONST CHAR8 *Token, IN CONST CHAR8 *Module, IN UINT64 TimeStamp, IN UINT32 Identifier) |
|
typedef EFI_STATUS(EFIAPI * | PERFORMANCE_GET_GAUGE_EX )(IN UINTN LogEntryKey, OUT GAUGE_DATA_ENTRY_EX **GaugeDataEntryEx) |
|
This file defines performance-related definitions, including the format of: performance GUID HOB. performance protocol interfaces. performance variables.
Copyright (c) 2009 - 2018, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent
typedef EFI_STATUS(EFIAPI * PERFORMANCE_END_GAUGE)(IN CONST VOID *Handle, IN CONST CHAR8 *Token, IN CONST CHAR8 *Module, IN UINT64 TimeStamp) |
Searches the performance measurement log from the beginning of the log for the first matching record that contains a zero end time and fills in a valid end time.
Searches the performance measurement log from the beginning of the log for the first record that matches Handle, Token, and Module, and has an end time value of zero. If the record can not be found then return EFI_NOT_FOUND. If the record is found and TimeStamp is not zero, then the end time in the record is filled in with the value specified by TimeStamp. If the record is found and TimeStamp is zero, then the end time in the matching record is filled in with the current time stamp value.
- Parameters
-
Handle | The pointer to environment specific context used to identify the component being measured. |
Token | The pointer to a Null-terminated ASCII string that identifies the component being measured. |
Module | The pointer to a Null-terminated ASCII string that identifies the module being measured. |
TimeStamp | The 64-bit time stamp. |
- Return values
-
EFI_SUCCESS | The end of the measurement was recorded. |
EFI_NOT_FOUND | The specified measurement record could not be found. |
typedef EFI_STATUS(EFIAPI * PERFORMANCE_END_GAUGE_EX)(IN CONST VOID *Handle, IN CONST CHAR8 *Token, IN CONST CHAR8 *Module, IN UINT64 TimeStamp, IN UINT32 Identifier) |
Searches the performance measurement log from the beginning of the log for the first matching record that contains a zero end time and fills in a valid end time.
Searches the performance measurement log from the beginning of the log for the first record that matches Handle, Token, Module and Identifier, and has an end time value of zero. If the record can not be found then return EFI_NOT_FOUND. If the record is found and TimeStamp is not zero, then the end time in the record is filled in with the value specified by TimeStamp. If the record is found and TimeStamp is zero, then the end time in the matching record is filled in with the current time stamp value.
- Parameters
-
Handle | The pointer to environment specific context used to identify the component being measured. |
Token | The pointer to a Null-terminated ASCII string that identifies the component being measured. |
Module | The pointer to a Null-terminated ASCII string that identifies the module being measured. |
TimeStamp | The 64-bit time stamp. |
Identifier | 32-bit identifier. If the value is 0, the found record is same as the one found by EndGauge of PERFORMANCE_PROTOCOL. |
- Return values
-
EFI_SUCCESS | The end of the measurement was recorded. |
EFI_NOT_FOUND | The specified measurement record could not be found. |
typedef EFI_STATUS(EFIAPI * PERFORMANCE_START_GAUGE)(IN CONST VOID *Handle, IN CONST CHAR8 *Token, IN CONST CHAR8 *Module, IN UINT64 TimeStamp) |
Adds a record at the end of the performance measurement log that records the start time of a performance measurement.
The added record contains the Handle, Token, and Module. The end time of the new record is not recorded, so it is set to zero. If TimeStamp is not zero, then TimeStamp is used to fill in the start time in the record. If TimeStamp is zero, the start time in the record is filled in with the value read from the current time stamp.
- Parameters
-
Handle | The pointer to environment specific context used to identify the component being measured. |
Token | The pointer to a Null-terminated ASCII string that identifies the component being measured. |
Module | The pointer to a Null-terminated ASCII string that identifies the module being measured. |
TimeStamp | The 64-bit time stamp. |
- Return values
-
EFI_SUCCESS | The data was read correctly from the device. |
EFI_OUT_OF_RESOURCES | There are not enough resources to record the measurement. |
typedef EFI_STATUS(EFIAPI * PERFORMANCE_START_GAUGE_EX)(IN CONST VOID *Handle, IN CONST CHAR8 *Token, IN CONST CHAR8 *Module, IN UINT64 TimeStamp, IN UINT32 Identifier) |
Adds a record at the end of the performance measurement log that records the start time of a performance measurement.
The added record contains the Handle, Token, Module and Identifier. The end time of the new record is not recorded, so it is set to zero. If TimeStamp is not zero, then TimeStamp is used to fill in the start time in the record. If TimeStamp is zero, the start time in the record is filled in with the value read from the current time stamp.
- Parameters
-
Handle | The pointer to environment specific context used to identify the component being measured. |
Token | The pointer to a Null-terminated ASCII string that identifies the component being measured. |
Module | The pointer to a Null-terminated ASCII string that identifies the module being measured. |
TimeStamp | The 64-bit time stamp. |
Identifier | 32-bit identifier. If the value is 0, the created record is same as the one created by StartGauge of PERFORMANCE_PROTOCOL. |
- Return values
-
EFI_SUCCESS | The data was read correctly from the device. |
EFI_OUT_OF_RESOURCES | There are not enough resources to record the measurement. |