TianoCore EDK2
master
Loading...
Searching...
No Matches
ExtendedFirmwarePerformance.h
Go to the documentation of this file.
1
10
#ifndef __EXTENDED_FIRMWARE_PERFORMANCE_H__
11
#define __EXTENDED_FIRMWARE_PERFORMANCE_H__
12
13
#include <
IndustryStandard/Acpi.h
>
14
15
//
16
// Known performance tokens
17
//
18
#define SEC_TOK "SEC"
19
#define DXE_TOK "DXE"
20
#define PEI_TOK "PEI"
21
#define BDS_TOK "BDS"
22
#define DRIVERBINDING_START_TOK "DB:Start:"
23
#define DRIVERBINDING_SUPPORT_TOK "DB:Support:"
24
#define DRIVERBINDING_STOP_TOK "DB:Stop:"
25
#define LOAD_IMAGE_TOK "LoadImage:"
26
#define START_IMAGE_TOK "StartImage:"
27
#define PEIM_TOK "PEIM"
28
29
//
30
// Misc defines
31
//
32
#define FPDT_RECORD_REVISION_1 (0x01)
33
34
//
35
// Length field in EFI_ACPI_5_0_FPDT_PERFORMANCE_RECORD_HEADER is a UINT8, thus:
36
//
37
#define FPDT_MAX_PERF_RECORD_SIZE (MAX_UINT8)
38
39
//
40
// FPDT Record Types
41
//
42
#define FPDT_GUID_EVENT_TYPE 0x1010
43
#define FPDT_DYNAMIC_STRING_EVENT_TYPE 0x1011
44
#define FPDT_DUAL_GUID_STRING_EVENT_TYPE 0x1012
45
#define FPDT_GUID_QWORD_EVENT_TYPE 0x1013
46
#define FPDT_GUID_QWORD_STRING_EVENT_TYPE 0x1014
47
48
//
49
// EDKII extended Fpdt record structures
50
//
51
#define FPDT_STRING_EVENT_RECORD_NAME_LENGTH 24
52
53
#pragma pack(1)
54
//
55
// FPDT Boot Performance Guid Event Record Structure
56
//
57
typedef
struct
{
58
EFI_ACPI_5_0_FPDT_PERFORMANCE_RECORD_HEADER
Header;
65
UINT16
ProgressID
;
70
UINT32
ApicID
;
74
UINT64
Timestamp
;
78
EFI_GUID
Guid
;
79
}
FPDT_GUID_EVENT_RECORD
;
80
81
//
82
// FPDT Boot Performance Dynamic String Event Record Structure
83
//
84
typedef
struct
{
85
EFI_ACPI_5_0_FPDT_PERFORMANCE_RECORD_HEADER
Header;
92
UINT16
ProgressID
;
97
UINT32
ApicID
;
101
UINT64
Timestamp
;
105
EFI_GUID
Guid
;
110
CHAR8 String[0];
111
}
FPDT_DYNAMIC_STRING_EVENT_RECORD
;
112
113
//
114
// FPDT Boot Performance Dual GUID String Event Record Structure
115
//
116
typedef
struct
{
117
EFI_ACPI_5_0_FPDT_PERFORMANCE_RECORD_HEADER
Header;
124
UINT16
ProgressID
;
129
UINT32
ApicID
;
133
UINT64
Timestamp
;
137
EFI_GUID
Guid1
;
141
EFI_GUID
Guid2
;
146
CHAR8 String[0];
147
}
FPDT_DUAL_GUID_STRING_EVENT_RECORD
;
148
149
//
150
// FPDT Boot Performance GUID Qword Event Record Structure
151
//
152
typedef
struct
{
153
EFI_ACPI_5_0_FPDT_PERFORMANCE_RECORD_HEADER
Header;
160
UINT16
ProgressID
;
165
UINT32
ApicID
;
169
UINT64
Timestamp
;
173
EFI_GUID
Guid
;
177
UINT64
Qword
;
178
}
FPDT_GUID_QWORD_EVENT_RECORD
;
179
180
//
181
// FPDT Boot Performance GUID Qword String Event Record Structure
182
//
183
typedef
struct
{
184
EFI_ACPI_5_0_FPDT_PERFORMANCE_RECORD_HEADER
Header;
191
UINT16
ProgressID
;
196
UINT32
ApicID
;
200
UINT64
Timestamp
;
204
EFI_GUID
Guid
;
208
UINT64
Qword
;
212
CHAR8 String[0];
213
}
FPDT_GUID_QWORD_STRING_EVENT_RECORD
;
214
215
#pragma pack()
216
217
//
218
// Union of all FPDT records
219
//
220
typedef
union
{
221
EFI_ACPI_5_0_FPDT_PERFORMANCE_RECORD_HEADER
RecordHeader;
222
FPDT_GUID_EVENT_RECORD
GuidEvent;
223
FPDT_DYNAMIC_STRING_EVENT_RECORD
DynamicStringEvent;
224
FPDT_DUAL_GUID_STRING_EVENT_RECORD
DualGuidStringEvent;
225
FPDT_GUID_QWORD_EVENT_RECORD
GuidQwordEvent;
226
FPDT_GUID_QWORD_STRING_EVENT_RECORD
GuidQwordStringEvent;
227
}
FPDT_RECORD
;
228
229
//
230
// Union of all pointers to FPDT records
231
//
232
typedef
union
{
233
EFI_ACPI_5_0_FPDT_PERFORMANCE_RECORD_HEADER
*RecordHeader;
234
FPDT_GUID_EVENT_RECORD
*GuidEvent;
235
FPDT_DYNAMIC_STRING_EVENT_RECORD
*DynamicStringEvent;
236
FPDT_DUAL_GUID_STRING_EVENT_RECORD
*DualGuidStringEvent;
237
FPDT_GUID_QWORD_EVENT_RECORD
*GuidQwordEvent;
238
FPDT_GUID_QWORD_STRING_EVENT_RECORD
*GuidQwordStringEvent;
239
}
FPDT_RECORD_PTR
;
240
246
typedef
struct
{
247
UINT32 SizeOfAllEntries;
248
UINT32 LoadImageCount;
249
UINT32 HobIsFull;
250
}
FPDT_PEI_EXT_PERF_HEADER
;
251
252
extern
EFI_GUID
gEdkiiFpdtExtendedFirmwarePerformanceGuid;
253
254
#endif
Acpi.h
EFI_ACPI_5_0_FPDT_PERFORMANCE_RECORD_HEADER
Definition:
Acpi50.h:1148
FPDT_DUAL_GUID_STRING_EVENT_RECORD
Definition:
ExtendedFirmwarePerformance.h:116
FPDT_DUAL_GUID_STRING_EVENT_RECORD::Guid2
EFI_GUID Guid2
Definition:
ExtendedFirmwarePerformance.h:141
FPDT_DUAL_GUID_STRING_EVENT_RECORD::ProgressID
UINT16 ProgressID
Definition:
ExtendedFirmwarePerformance.h:124
FPDT_DUAL_GUID_STRING_EVENT_RECORD::Guid1
EFI_GUID Guid1
Definition:
ExtendedFirmwarePerformance.h:137
FPDT_DUAL_GUID_STRING_EVENT_RECORD::Timestamp
UINT64 Timestamp
Definition:
ExtendedFirmwarePerformance.h:133
FPDT_DUAL_GUID_STRING_EVENT_RECORD::ApicID
UINT32 ApicID
Definition:
ExtendedFirmwarePerformance.h:129
FPDT_DYNAMIC_STRING_EVENT_RECORD
Definition:
ExtendedFirmwarePerformance.h:84
FPDT_DYNAMIC_STRING_EVENT_RECORD::Guid
EFI_GUID Guid
Definition:
ExtendedFirmwarePerformance.h:105
FPDT_DYNAMIC_STRING_EVENT_RECORD::ApicID
UINT32 ApicID
Definition:
ExtendedFirmwarePerformance.h:97
FPDT_DYNAMIC_STRING_EVENT_RECORD::ProgressID
UINT16 ProgressID
Definition:
ExtendedFirmwarePerformance.h:92
FPDT_DYNAMIC_STRING_EVENT_RECORD::Timestamp
UINT64 Timestamp
Definition:
ExtendedFirmwarePerformance.h:101
FPDT_GUID_EVENT_RECORD
Definition:
ExtendedFirmwarePerformance.h:57
FPDT_GUID_EVENT_RECORD::ProgressID
UINT16 ProgressID
Definition:
ExtendedFirmwarePerformance.h:65
FPDT_GUID_EVENT_RECORD::Timestamp
UINT64 Timestamp
Definition:
ExtendedFirmwarePerformance.h:74
FPDT_GUID_EVENT_RECORD::ApicID
UINT32 ApicID
Definition:
ExtendedFirmwarePerformance.h:70
FPDT_GUID_EVENT_RECORD::Guid
EFI_GUID Guid
Definition:
ExtendedFirmwarePerformance.h:78
FPDT_GUID_QWORD_EVENT_RECORD
Definition:
ExtendedFirmwarePerformance.h:152
FPDT_GUID_QWORD_EVENT_RECORD::Timestamp
UINT64 Timestamp
Definition:
ExtendedFirmwarePerformance.h:169
FPDT_GUID_QWORD_EVENT_RECORD::ProgressID
UINT16 ProgressID
Definition:
ExtendedFirmwarePerformance.h:160
FPDT_GUID_QWORD_EVENT_RECORD::ApicID
UINT32 ApicID
Definition:
ExtendedFirmwarePerformance.h:165
FPDT_GUID_QWORD_EVENT_RECORD::Qword
UINT64 Qword
Definition:
ExtendedFirmwarePerformance.h:177
FPDT_GUID_QWORD_EVENT_RECORD::Guid
EFI_GUID Guid
Definition:
ExtendedFirmwarePerformance.h:173
FPDT_GUID_QWORD_STRING_EVENT_RECORD
Definition:
ExtendedFirmwarePerformance.h:183
FPDT_GUID_QWORD_STRING_EVENT_RECORD::Guid
EFI_GUID Guid
Definition:
ExtendedFirmwarePerformance.h:204
FPDT_GUID_QWORD_STRING_EVENT_RECORD::Qword
UINT64 Qword
Definition:
ExtendedFirmwarePerformance.h:208
FPDT_GUID_QWORD_STRING_EVENT_RECORD::ProgressID
UINT16 ProgressID
Definition:
ExtendedFirmwarePerformance.h:191
FPDT_GUID_QWORD_STRING_EVENT_RECORD::Timestamp
UINT64 Timestamp
Definition:
ExtendedFirmwarePerformance.h:200
FPDT_GUID_QWORD_STRING_EVENT_RECORD::ApicID
UINT32 ApicID
Definition:
ExtendedFirmwarePerformance.h:196
FPDT_PEI_EXT_PERF_HEADER
Definition:
ExtendedFirmwarePerformance.h:246
GUID
Definition:
Base.h:213
FPDT_RECORD_PTR
Definition:
ExtendedFirmwarePerformance.h:232
FPDT_RECORD
Definition:
ExtendedFirmwarePerformance.h:220
MdeModulePkg
Include
Guid
ExtendedFirmwarePerformance.h
Generated on Fri Nov 15 2024 18:01:11 for TianoCore EDK2 by
1.9.6