]> git.proxmox.com Git - mirror_edk2.git/blob - EdkCompatibilityPkg/Foundation/Include/EfiPerf.h
Maintainers.txt: Remove EdkCompatibilityPkg information
[mirror_edk2.git] / EdkCompatibilityPkg / Foundation / Include / EfiPerf.h
1 /*++
2
3 Copyright (c) 2004, Intel Corporation. All rights reserved.<BR>
4 This program and the accompanying materials
5 are licensed and made available under the terms and conditions of the BSD License
6 which accompanies this distribution. The full text of the license may be found at
7 http://opensource.org/licenses/bsd-license.php
8
9 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
10 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
11
12 Module Name:
13
14 EfiPerf.h
15
16 Abstract:
17 EfiPerf.h provides performance primitive for the DXE and Shell phase
18
19
20 --*/
21
22 #ifndef _EFI_PERF_H_
23 #define _EFI_PERF_H_
24
25 #include EFI_PROTOCOL_DEFINITION (Performance)
26
27 EFI_STATUS
28 EFIAPI
29 InitializePerformanceInfrastructure (
30 IN EFI_HANDLE ImageHandle,
31 IN EFI_SYSTEM_TABLE *SystemTable,
32 IN UINT64 Ticker
33 )
34 /*++
35
36 Routine Description:
37
38 TODO: Add function description
39
40 Arguments:
41
42 ImageHandle - TODO: add argument description
43 SystemTable - TODO: add argument description
44 Ticker - TODO: add argument description
45
46 Returns:
47
48 TODO: add return values
49
50 --*/
51 ;
52
53 EFI_STATUS
54 EFIAPI
55 EndMeasure (
56 IN EFI_HANDLE Handle,
57 IN UINT16 *Token,
58 IN UINT16 *Host,
59 IN UINT64 Ticker
60 )
61 /*++
62
63 Routine Description:
64
65 TODO: Add function description
66
67 Arguments:
68
69 Handle - TODO: add argument description
70 Token - TODO: add argument description
71 Host - TODO: add argument description
72 Ticker - TODO: add argument description
73
74 Returns:
75
76 TODO: add return values
77
78 --*/
79 ;
80
81 EFI_STATUS
82 EFIAPI
83 StartMeasure (
84 IN EFI_HANDLE Handle,
85 IN UINT16 *Token,
86 IN UINT16 *Host,
87 IN UINT64 Ticker
88 )
89 /*++
90
91 Routine Description:
92
93 TODO: Add function description
94
95 Arguments:
96
97 Handle - TODO: add argument description
98 Token - TODO: add argument description
99 Host - TODO: add argument description
100 Ticker - TODO: add argument description
101
102 Returns:
103
104 TODO: add return values
105
106 --*/
107 ;
108
109 EFI_STATUS
110 EFIAPI
111 UpdateMeasure (
112 IN EFI_HANDLE Handle,
113 IN UINT16 *Token,
114 IN UINT16 *Host,
115 IN EFI_HANDLE HandleNew,
116 IN UINT16 *TokenNew,
117 IN UINT16 *HostNew
118 )
119 /*++
120
121 Routine Description:
122
123 TODO: Add function description
124
125 Arguments:
126
127 Handle - TODO: add argument description
128 Token - TODO: add argument description
129 Host - TODO: add argument description
130 HandleNew - TODO: add argument description
131 TokenNew - TODO: add argument description
132 HostNew - TODO: add argument description
133
134 Returns:
135
136 TODO: add return values
137
138 --*/
139 ;
140
141 #ifdef EFI_DXE_PERFORMANCE
142 #define PERF_ENABLE(handle, table, ticker) InitializePerformanceInfrastructure (handle, table, ticker)
143 #define PERF_START(handle, token, host, ticker) StartMeasure (handle, token, host, ticker)
144 #define PERF_END(handle, token, host, ticker) EndMeasure (handle, token, host, ticker)
145 #define PERF_UPDATE(handle, token, host, handlenew, tokennew, hostnew) \
146 UpdateMeasure (handle, \
147 token, \
148 host, \
149 handlenew, \
150 tokennew, \
151 hostnew \
152 )
153 #define PERF_CODE(code) code
154 #else
155 #define PERF_ENABLE(handle, table, ticker)
156 #define PERF_START(handle, token, host, ticker)
157 #define PERF_END(handle, token, host, ticker)
158 #define PERF_UPDATE(handle, token, host, handlenew, tokennew, hostnew)
159 #define PERF_CODE(code)
160 #endif
161
162 #endif