]> git.proxmox.com Git - mirror_edk2.git/blob - EdkModulePkg/Include/Guid/ExtendedSalGuid.h
changed the Esal call function ids all over the tree
[mirror_edk2.git] / EdkModulePkg / Include / Guid / ExtendedSalGuid.h
1 /*++
2
3 Copyright (c) 2006, Intel Corporation
4 All rights reserved. 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 ExtendedSalGuid.h
15
16 Abstract:
17
18
19 --*/
20
21 #ifndef _EXTENDED_SAL_GUID_H_
22 #define _EXTENDED_SAL_GUID_H_
23
24 //
25 // Extended SAL Services protocol GUIDs
26 //
27
28
29 #define GUID_STRUCTURE(Lo, Hi) \
30 { (Lo & 0xffffffff), \
31 ((Lo >> 32) & 0xffff), \
32 ((Lo >> 48) & 0xffff), \
33 { (Hi & 0xff), \
34 ((Hi >> 8) & 0xff), \
35 ((Hi >> 16) & 0xff), \
36 ((Hi >> 24) & 0xff), \
37 ((Hi >> 32) & 0xff), \
38 ((Hi >> 40) & 0xff), \
39 ((Hi >> 48) & 0xff), \
40 ((Hi >> 56) & 0xff) \
41 } \
42 }
43
44
45 #define EFI_EXTENDED_SAL_BASE_IO_SERVICES_PROTOCOL_GUID_LO 0x451531e15aea42b5
46 #define EFI_EXTENDED_SAL_BASE_IO_SERVICES_PROTOCOL_GUID_HI 0xa6657525d5b831bc
47 #define EFI_EXTENDED_SAL_BASE_IO_SERVICES_PROTOCOL_GUID \
48 { 0x5aea42b5, 0x31e1, 0x4515, {0xbc, 0x31, 0xb8, 0xd5, 0x25, 0x75, 0x65, 0xa6 } }
49 // GUID_STRUCTURE(EFI_EXTENDED_SAL_BASE_IO_SERVICES_PROTOCOL_GUID_LO, EFI_EXTENDED_SAL_BASE_IO_SERVICES_PROTOCOL_GUID_HI)
50
51 #define EFI_EXTENDED_SAL_STALL_SERVICES_PROTOCOL_GUID_LO 0x4d8cac2753a58d06
52 #define EFI_EXTENDED_SAL_STALL_SERVICES_PROTOCOL_GUID_HI 0x704165808af0e9b5
53 #define EFI_EXTENDED_SAL_STALL_SERVICES_PROTOCOL_GUID \
54 { 0x53a58d06, 0xac27, 0x4d8c, {0xb5, 0xe9, 0xf0, 0x8a, 0x80, 0x65, 0x41, 0x70 } }
55 // GUID_STRUCTURE(EFI_EXTENDED_SAL_STALL_SERVICES_PROTOCOL_GUID_LO, EFI_EXTENDED_SAL_STALL_SERVICES_PROTOCOL_GUID_HI)
56
57 #define EFI_EXTENDED_SAL_LOCK_SERVICES_PROTOCOL_GUID_LO 0x4e17fe4f76b75c23
58 #define EFI_EXTENDED_SAL_LOCK_SERVICES_PROTOCOL_GUID_HI 0x4a49bb3d651aada2
59 #define EFI_EXTENDED_SAL_LOCK_SERVICES_PROTOCOL_GUID \
60 { 0x76b75c23, 0xfe4f, 0x4e17, {0xa2, 0xad, 0x1a, 0x65, 0x3d, 0xbb, 0x49, 0x4a } }
61 // GUID_STRUCTURE(EFI_EXTENDED_SAL_LOCK_SERVICES_PROTOCOL_GUID_LO, EFI_EXTENDED_SAL_LOCK_SERVICES_PROTOCOL_GUID_HI)
62
63 #define EFI_EXTENDED_SAL_VIRTUAL_SERVICES_PROTOCOL_GUID_LO 0x4871260ec1a74056
64 #define EFI_EXTENDED_SAL_VIRTUAL_SERVICES_PROTOCOL_GUID_HI 0x116e5ba645e631a0
65 #define EFI_EXTENDED_SAL_VIRTUAL_SERVICES_PROTOCOL_GUID \
66 { 0xc1a74056, 0x260e, 0x4871, {0xa0, 0x31, 0xe6, 0x45, 0xa6, 0x5b, 0x6e, 0x11 } }
67 // GUID_STRUCTURE(EFI_EXTENDED_SAL_VIRTUAL_SERVICES_PROTOCOL_GUID_LO, EFI_EXTENDED_SAL_VIRTUAL_SERVICES_PROTOCOL_GUID_HI)
68
69 #define EFI_EXTENDED_SAL_RTC_SERVICES_PROTOCOL_GUID_LO 0x4d02efdb7e97a470
70 #define EFI_EXTENDED_SAL_RTC_SERVICES_PROTOCOL_GUID_HI 0x96a27bd29061ce8f
71 #define EFI_EXTENDED_SAL_RTC_SERVICES_PROTOCOL_GUID \
72 { 0x7e97a470, 0xefdb, 0x4d02, {0x8f, 0xce, 0x61, 0x90, 0xd2, 0x7b, 0xa2, 0x96 } }
73 // GUID_STRUCTURE(EFI_EXTENDED_SAL_RTC_SERVICES_PROTOCOL_GUID_LO, EFI_EXTENDED_SAL_RTC_SERVICES_PROTOCOL_GUID_HI)
74
75 #define EFI_EXTENDED_SAL_VARIABLE_SERVICES_PROTOCOL_GUID_LO 0x4370c6414ecb6c53
76 #define EFI_EXTENDED_SAL_VARIABLE_SERVICES_PROTOCOL_GUID_HI 0x78836e490e3bb28c
77 #define EFI_EXTENDED_SAL_VARIABLE_SERVICES_PROTOCOL_GUID \
78 { 0x4ecb6c53, 0xc641, 0x4370, {0x8c, 0xb2, 0x3b, 0x0e, 0x49, 0x6e, 0x83, 0x78 } }
79 // GUID_STRUCTURE(EFI_EXTENDED_SAL_VARIABLE_SERVICES_PROTOCOL_GUID_LO, EFI_EXTENDED_SAL_VARIABLE_SERVICES_PROTOCOL_GUID_HI)
80
81 #define EFI_EXTENDED_SAL_MTC_SERVICES_PROTOCOL_GUID_LO 0x408b75e8899afd18
82 #define EFI_EXTENDED_SAL_MTC_SERVICES_PROTOCOL_GUID_HI 0x54f4cd7e2e6e1aa4
83 #define EFI_EXTENDED_SAL_MTC_SERVICES_PROTOCOL_GUID \
84 { 0x899afd18, 0x75e8, 0x408b, {0xa4, 0x1a, 0x6e, 0x2e, 0x7e, 0xcd, 0xf4, 0x54 } }
85 // GUID_STRUCTURE(EFI_EXTENDED_SAL_MTC_SERVICES_PROTOCOL_GUID_LO, EFI_EXTENDED_SAL_MTC_SERVICES_PROTOCOL_GUID_HI)
86
87 #define EFI_EXTENDED_SAL_RESET_SERVICES_PROTOCOL_GUID_LO 0x46f58ce17d019990
88 #define EFI_EXTENDED_SAL_RESET_SERVICES_PROTOCOL_GUID_HI 0xa06a6798513c76a7
89 #define EFI_EXTENDED_SAL_RESET_SERVICES_PROTOCOL_GUID \
90 { 0x7d019990, 0x8ce1, 0x46f5, {0xa7, 0x76, 0x3c, 0x51, 0x98, 0x67, 0x6a, 0xa0 } }
91 // GUID_STRUCTURE(EFI_EXTENDED_SAL_RESET_SERVICES_PROTOCOL_GUID_LO, EFI_EXTENDED_SAL_RESET_SERVICES_PROTOCOL_GUID_HI)
92
93 #define EFI_EXTENDED_SAL_STATUS_CODE_SERVICES_PROTOCOL_GUID_LO 0x420f55e9dbd91d
94 #define EFI_EXTENDED_SAL_STATUS_CODE_SERVICES_PROTOCOL_GUID_HI 0x4fb437849f5e3996
95 #define EFI_EXTENDED_SAL_STATUS_CODE_SERVICES_PROTOCOL_GUID \
96 { 0xdbd91d, 0x55e9, 0x420f, {0x96, 0x39, 0x5e, 0x9f, 0x84, 0x37, 0xb4, 0x4f } }
97 // GUID_STRUCTURE(EFI_EXTENDED_SAL_STATUS_CODE_SERVICES_PROTOCOL_GUID_LO, EFI_EXTENDED_SAL_STATUS_CODE_SERVICES_PROTOCOL_GUID_HI)
98
99 #define EFI_EXTENDED_SAL_FV_BLOCK_SERVICES_PROTOCOL_GUID_LO 0x4f1dbcbba2271df1
100 #define EFI_EXTENDED_SAL_FV_BLOCK_SERVICES_PROTOCOL_GUID_HI 0x1a072f17bc06a998
101 #define EFI_EXTENDED_SAL_FV_BLOCK_SERVICES_PROTOCOL_GUID \
102 { 0xa2271df1, 0xbcbb, 0x4f1d, {0x98, 0xa9, 0x06, 0xbc, 0x17, 0x2f, 0x07, 0x1a } }
103 // GUID_STRUCTURE(EFI_EXTENDED_SAL_FV_BLOCK_SERVICES_PROTOCOL_GUID_LO, EFI_EXTENDED_SAL_FV_BLOCK_SERVICES_PROTOCOL_GUID_HI)
104
105 #define EFI_EXTENDED_SAL_MP_SERVICES_PROTOCOL_GUID_LO 0x4dc0cf18697d81a2
106 #define EFI_EXTENDED_SAL_MP_SERVICES_PROTOCOL_GUID_HI 0x3f8a613b11060d9e
107 #define EFI_EXTENDED_SAL_MP_SERVICES_PROTOCOL_GUID \
108 { 0x697d81a2, 0xcf18, 0x4dc0, {0x9e, 0x0d, 0x06, 0x11, 0x3b, 0x61, 0x8a, 0x3f } }
109 // GUID_STRUCTURE(EFI_EXTENDED_SAL_MP_SERVICES_PROTOCOL_GUID_LO, EFI_EXTENDED_SAL_MP_SERVICES_PROTOCOL_GUID_HI)
110
111 #define EFI_EXTENDED_SAL_PAL_SERVICES_PROTOCOL_GUID_LO 0x438d0fc2e1cd9d21
112 #define EFI_EXTENDED_SAL_PAL_SERVICES_PROTOCOL_GUID_HI 0x571e966de6040397
113 #define EFI_EXTENDED_SAL_PAL_SERVICES_PROTOCOL_GUID \
114 { 0xe1cd9d21, 0x0fc2, 0x438d, {0x97, 0x03, 0x04, 0xe6, 0x6d, 0x96, 0x1e, 0x57 } }
115 // GUID_STRUCTURE(EFI_EXTENDED_SAL_PAL_SERVICES_PROTOCOL_GUID_LO, EFI_EXTENDED_SAL_PAL_SERVICES_PROTOCOL_GUID_HI)
116
117 #define EFI_EXTENDED_SAL_BASE_SERVICES_PROTOCOL_GUID_LO 0x41c30fe0d9e9fa06
118 #define EFI_EXTENDED_SAL_BASE_SERVICES_PROTOCOL_GUID_HI 0xf894335a4283fb96
119 #define EFI_EXTENDED_SAL_BASE_SERVICES_PROTOCOL_GUID \
120 { 0xd9e9fa06, 0x0fe0, 0x41c3, {0x96, 0xfb, 0x83, 0x42, 0x5a, 0x33, 0x94, 0xf8 } }
121 // GUID_STRUCTURE(EFI_EXTENDED_SAL_BASE_SERVICES_PROTOCOL_GUID_LO, EFI_EXTENDED_SAL_BASE_SERVICES_PROTOCOL_GUID_HI)
122
123 #define EFI_EXTENDED_SAL_MCA_SERVICES_PROTOCOL_GUID_LO 0x42b16cc72a591128
124 #define EFI_EXTENDED_SAL_MCA_SERVICES_PROTOCOL_GUID_HI 0xbb2d683b9358f08a
125 #define EFI_EXTENDED_SAL_MCA_SERVICES_PROTOCOL_GUID \
126 { 0x2a591128, 0x6cc7, 0x42b1, {0x8a, 0xf0, 0x58, 0x93, 0x3b, 0x68, 0x2d, 0xbb } }
127 // GUID_STRUCTURE(EFI_EXTENDED_SAL_MCA_SERVICES_PROTOCOL_GUID_LO, EFI_EXTENDED_SAL_MCA_SERVICES_PROTOCOL_GUID_HI)
128
129 #define EFI_EXTENDED_SAL_PCI_SERVICES_PROTOCOL_GUID_LO 0x4905ad66a46b1a31
130 #define EFI_EXTENDED_SAL_PCI_SERVICES_PROTOCOL_GUID_HI 0x6330dc59462bf692
131 #define EFI_EXTENDED_SAL_PCI_SERVICES_PROTOCOL_GUID \
132 { 0xa46b1a31, 0xad66, 0x4905, {0x92, 0xf6, 0x2b, 0x46, 0x59, 0xdc, 0x30, 0x63 } }
133 // GUID_STRUCTURE(EFI_EXTENDED_SAL_PCI_SERVICES_PROTOCOL_GUID_LO, EFI_EXTENDED_SAL_PCI_SERVICES_PROTOCOL_GUID_HI)
134
135 #define EFI_EXTENDED_SAL_CACHE_SERVICES_PROTOCOL_GUID_LO 0x4ba52743edc9494
136 #define EFI_EXTENDED_SAL_CACHE_SERVICES_PROTOCOL_GUID_HI 0x88f11352ef0a1888
137 #define EFI_EXTENDED_SAL_CACHE_SERVICES_PROTOCOL_GUID \
138 { 0xedc9494, 0x2743, 0x4ba5, { 0x88, 0x18, 0x0a, 0xef, 0x52, 0x13, 0xf1, 0x88 } }
139 // GUID_STRUCTURE(EFI_EXTENDED_SAL_CACHE_SERVICES_PROTOCOL_GUID_LO, EFI_EXTENDED_SAL_CACHE_SERVICES_PROTOCOL_GUID_HI)
140
141 #define EFI_EXTENDED_SAL_MCA_LOG_SERVICES_PROTOCOL_GUID_LO 0x4c0338a3cb3fd86e
142 #define EFI_EXTENDED_SAL_MCA_LOG_SERVICES_PROTOCOL_GUID_HI 0x7aaba2a3cf905c9a
143 #define EFI_EXTENDED_SAL_MCA_LOG_SERVICES_PROTOCOL_GUID \
144 { 0xcb3fd86e, 0x38a3, 0x4c03, {0x9a, 0x5c, 0x90, 0xcf, 0xa3, 0xa2, 0xab, 0x7a } }
145 // GUID_STRUCTURE(EFI_EXTENDED_SAL_MCA_LOG_SERVICES_PROTOCOL_GUID_LO, EFI_EXTENDED_SAL_MCA_LOG_SERVICES_PROTOCOL_GUID_HI)
146
147 #define EFI_EXTENDED_SAL_ELOG_SERVICES_PROTOCOL_GUID_LO 0x453c3e0ad5e4ee5f
148 #define EFI_EXTENDED_SAL_ELOG_SERVICES_PROTOCOL_GUID_HI 0x5a3606bb92b625a7
149 #define EFI_EXTENDED_SAL_ELOG_SERVICES_PROTOCOL_GUID \
150 { 0xd5e4ee5f, 0x3e0a, 0x453c, {0xa7, 0x25, 0xb6, 0x92, 0xbb, 0x06, 0x36, 0x5a } }
151 // GUID_STRUCTURE(EFI_EXTENDED_SAL_ELOG_SERVICES_PROTOCOL_GUID_LO, EFI_EXTENDED_SAL_ELOG_SERVICES_PROTOCOL_GUID_HI)
152
153 #define EFI_EXTENDED_SAL_SENSOR_SERVICES_PROTOCOL_GUID_LO 0x498285a14a153b6e
154 #define EFI_EXTENDED_SAL_SENSOR_SERVICES_PROTOCOL_GUID_HI 0xa1aba4fc8c6af498
155 #define EFI_EXTENDED_SAL_SENSOR_SERVICES_PROTOCOL_GUID \
156 { 0x4a153b6e, 0x85a1, 0x4982, {0x98, 0xf4, 0x6a, 0x8c, 0xfc, 0xa4, 0xab, 0xa1 } }
157 // GUID_STRUCTURE(EFI_EXTENDED_SAL_SENSOR_SERVICES_PROTOCOL_GUID_LO, EFI_EXTENDED_SAL_SENSOR_SERVICES_PROTOCOL_GUID_HI)
158
159 #define EFI_EXTENDED_SAL_SM_COM_LAYER_SERVICES_PROTOCOL_GUID_LO 0x4e0881b74356799
160 #define EFI_EXTENDED_SAL_SM_COM_LAYER_SERVICES_PROTOCOL_GUID_HI 0x42ba47fa78d98da3
161 #define EFI_EXTENDED_SAL_SM_COM_LAYER_SERVICES_PROTOCOL_GUID \
162 { 0x4356799, 0x81b7, 0x4e08, { 0xa3, 0x8d, 0xd9, 0x78, 0xfa, 0x47, 0xba, 0x42 } }
163 // GUID_STRUCTURE(EFI_EXTENDED_SAL_SM_COM_LAYER_SERVICES_PROTOCOL_GUID_LO, EFI_EXTENDED_SAL_SM_COM_LAYER_SERVICES_PROTOCOL_GUID_HI)
164
165 #define EFI_EXTENDED_SAL_SST_GUID_LO 0x4b4e868a38802700
166 #define EFI_EXTENDED_SAL_SST_GUID_HI 0x6fb4cfdc1b4fd481
167 #define EFI_EXTENDED_SAL_SST_GUID \
168 { 0x38802700, 0x868a, 0x4b4e, {0x81, 0xd4, 0x4f, 0x1b, 0xdc, 0xcf, 0xb4, 0x6f } }
169 // GUID_STRUCTURE(EFI_EXTENDED_SAL_SST_GUID_LO, EFI_EXTENDED_SAL_SST_GUID_HI)
170
171 #define EFI_ERROR_EVENT_INFORMATION_PROTOCOL_GUID_LO 0x45431114D0D7913F
172 #define EFI_ERROR_EVENT_INFORMATION_PROTOCOL_GUID_HI 0x96FF7A730CC368B5
173 #define EFI_ERROR_EVENT_INFORMATION_PROTOCOL_GUID \
174 { 0xD0D7913F, 0x1114, 0x4543, {0xB5, 0x68, 0xC3, 0x0C, 0x73, 0x7A, 0xFF, 0x96 } }
175
176 //
177 // Extended Sal Proc Function IDs.
178 //
179
180 //
181 // BugBug: These enums are name colisions waiting to happen. They should all be
182 // prefixed with Esal! It might be better to just make them #define, so
183 // they would be all caps.
184 //
185
186 typedef enum {
187 IoReadFunctionId,
188 IoWriteFunctionId,
189 MemReadFunctionId,
190 MemWriteFunctionId
191 } EFI_EXTENDED_SAL_BASE_IO_SERVICES_FUNC_ID;
192
193 typedef enum {
194 StallFunctionId
195 } EFI_EXTENDED_SAL_STALL_FUNC_ID;
196
197
198 typedef enum {
199 InitializeLockServiceFunctionId,
200 AcquireLockServiceFunctionId,
201 ReleaseLockServiceFunctionId,
202 MaxLockServiceFunctionId
203 } EFI_EXTENDED_SAL_LOCK_SERVICES_FUNC_ID;
204
205 //
206 // BugBug : Covert the first 3 functions into a lib functions
207 // and move SalRegisterPhysicalAddress to SAL BASE Class
208 //
209 typedef enum {
210 SetVirtualAddressFunctionId,
211 IsVirtualFunctionId,
212 IsEfiRuntimeFunctionId,
213 SalRegisterPhysicalAddressFunctionId
214 } EFI_EXTENDED_SAL_VIRTUAL_SERVICES_FUNC_ID;
215
216 typedef enum {
217 GetTimeFunctionId,
218 SetTimeFunctionId,
219 GetWakeupTimeFunctionId,
220 SetWakeupTimeFunctionId,
221 GetRtcFreqFunctionId,
222 InitializeThresholdFunctionId,
223 BumpThresholdCountFunctionId,
224 GetThresholdCountFunctionId
225 } EFI_EXTENDED_SAL_RTC_SERVICES_FUNC_ID;
226
227 typedef enum {
228 EsalGetVariableFunctionId,
229 EsalGetNextVariableNameFunctionId,
230 EsalSetVariableFunctionId
231 #if (EFI_SPECIFICATION_VERSION >= 0x00020000)
232 ,
233 EsalQueryVariableInfoFunctionId
234 #endif
235 } EFI_EXTENDED_SAL_VARIABLE_SERVICES_FUNC_ID;
236
237 typedef enum {
238 GetNextHighMonotonicCountFunctionId
239 } EFI_EXTENDED_SAL_MTC_SERVICES_FUNC_ID;
240
241 typedef enum {
242 ResetSystemFunctionId
243 } EFI_EXTENDED_SAL_RESET_SERVICES_FUNC_ID;
244
245 typedef enum {
246 StatusCodeFunctionId
247 } EFI_EXTENDED_SAL_STATUS_CODE_FUNC_ID;
248
249 typedef enum {
250 ReportStatusCodeServiceFunctionId
251 } EFI_EXTENDED_SAL_STATUS_CODE_SERVICES_FUNC_ID;
252
253 typedef enum {
254 ReadFunctionId,
255 WriteFunctionId,
256 EraseBlockFunctionId,
257 GetVolumeAttributesFunctionId,
258 SetVolumeAttributesFunctionId,
259 GetPhysicalAddressFunctionId,
260 GetBlockSizeFunctionId,
261 EraseCustomBlockRangeFunctionId
262 } EFI_EXTENDED_SAL_FV_BLOCK_SERVICES_FUNC_ID;
263
264 typedef enum {
265 AddCpuDataFunctionId,
266 RemoveCpuDataFunctionId,
267 ModifyCpuDataFunctionId,
268 GetCpuDataByIDFunctionId,
269 GetCpuDataByIndexFunctionId,
270 SendIpiFunctionId,
271 CurrentProcInfoFunctionId,
272 NumProcessorsFunctionId,
273 SetMinStateFunctionId,
274 GetMinStateFunctionId,
275 EsalPhysicalIdInfoFunctionId
276 } EFI_EXTENDED_SAL_MP_SERVICES_FUNC_ID;
277
278 typedef enum {
279 PalProcFunctionId,
280 SetNewPalEntryFunctionId,
281 GetNewPalEntryFunctionId,
282 EsalUpdatePalFunctionId
283 } EFI_EXTENDED_SAL_PAL_SERVICES_FUNC_ID;
284
285 typedef enum {
286 McaVector,
287 BspInitVector,
288 BootRendezVector,
289 ApInitVector
290 } ESAL_GET_VECTOR_TYPE;
291
292 typedef enum {
293 SalSetVectorsFunctionId,
294 SalMcRendezFunctionId,
295 SalMcSetParamsFunctionId,
296 EsalGetVectorsFunctionId,
297 EsalMcGetParamsFunctionId,
298 EsalMcGetMcParamsFunctionId,
299 EsalGetMcCheckinFlagsFunctionId,
300 EsalGetPlatformBaseFreqFunctionId,
301 EsalRegisterPhysicalAddrFunctionId
302 } EFI_EXTENDED_SAL_BASE_SERVICES_FUNC_ID;
303
304 typedef enum {
305 McaGetStateInfoFunctionId,
306 McaRegisterCpuFunctionId
307 } EFI_EXTENDED_SAL_MCA_SERVICES_FUNC_ID;
308
309 typedef enum {
310 SalPciConfigReadFunctionId,
311 SalPciConfigWriteFunctionId
312 } EFI_EXTENDED_SAL_PCI_SERVICES_FUNC_ID;
313
314 typedef enum {
315 SalCacheInitFunctionId,
316 SalCacheFlushFunctionId
317 } EFI_EXTENDED_SAL_CACHE_SERVICES_FUNC_ID;
318
319 typedef enum {
320 SalGetStateInfoFunctionId,
321 SalGetStateInfoSizeFunctionId,
322 SalClearStateInfoFunctionId,
323 EsalGetStateBufferFunctionId,
324 EsalSaveStateBufferFunctionId
325 } EFI_EXTENDED_SAL_MCA_LOG_SERVICES_FUNC_ID;
326
327 typedef enum {
328 SalSetEventLogDataFunctionId,
329 SalGetEventLogDataFunctionId,
330 SalEraseEventLogDataFunctionId,
331 SalActivateEventLogDataFunctionId
332 } EFI_EXTENDED_SAL_ELOG_SERVICES_FUNC_ID;
333
334 typedef enum {
335 EsalGetComControllerInfoFunctionId,
336 EsalSendComDataFunctionId,
337 EsalReceiveComDataFunctionId
338 } EFI_EXTENDED_SAL_SM_COM_LAYER_SERVICES_FUNC_ID;
339
340 typedef enum {
341 SalUpdatePalFunctionId
342 } EFI_EXTENDED_SAL_UPDATE_PAL_SERVICES_FUNC_ID;
343
344 typedef enum {
345 EsalReadSensorInfoFunctionId,
346 EsalReadSensorStatusFunctionId,
347 EsalRearmSensorFunctionId,
348 EsalReadSensorDataFunctionId
349 } EFI_EXTENDED_SAL_SENSOR_SERVICES_FUNC_ID;
350
351 typedef enum {
352 EsalGetProcessorErrorEventInfoFunctionId,
353 EsalGetPlatformErrorEventInfoFunctionId,
354 EsalClearProcessorErrorEventInfoFunctionId,
355 EsalClearPlatformErrorEventInfoFunctionId
356 } EFI_EXTENDED_SAL_ERROR_EVENT_INFO_FUNC_ID;
357
358 typedef struct {
359 UINT64 ProtoData;
360 } ESAL_GUID_DUMMY_PROTOCOL;
361
362 extern EFI_GUID gEfiExtendedSalBaseIoServicesProtocolGuid;
363 extern EFI_GUID gEfiExtendedSalStallServicesProtocolGuid;
364 extern EFI_GUID gEfiExtendedSalLockServicesProtocolGuid;
365 extern EFI_GUID gEfiExtendedSalVirtualServicesProtocolGuid;
366 extern EFI_GUID gEfiExtendedSalRtcServicesProtocolGuid;
367 extern EFI_GUID gEfiExtendedSalVariableServicesProtocolGuid;
368 extern EFI_GUID gEfiExtendedSalMtcServicesProtocolGuid;
369 extern EFI_GUID gEfiExtendedSalResetServicesProtocolGuid;
370 extern EFI_GUID gEfiExtendedSalStatusCodeServicesProtocolGuid;
371 extern EFI_GUID gEfiExtendedSalFvBlockServicesProtocolGuid;
372 extern EFI_GUID gEfiExtendedSalMpServicesProtocolGuid;
373 extern EFI_GUID gEfiExtendedSalPalServicesProtocolGuid;
374 extern EFI_GUID gEfiExtendedSalBaseServicesProtocolGuid;
375 extern EFI_GUID gEfiExtendedSalMcaServicesProtocolGuid;
376 extern EFI_GUID gEfiExtendedSalPciServicesProtocolGuid;
377 extern EFI_GUID gEfiExtendedSalCacheServicesProtocolGuid;
378 extern EFI_GUID gEfiExtendedSalMcaLogServicesProtocolGuid;
379 extern EFI_GUID gEfiExtendedSalElogServicesProtocolGuid;
380 extern EFI_GUID gEfiExtendedSalSensorServicesProtocolGuid;
381 extern EFI_GUID gEfiExtendedSalSmComLayerServicesProtocolGuid;
382 extern EFI_GUID gEfiExtendedSalSstGuid;
383 extern EFI_GUID gEfiExtendedSalErrorEventInfoProtocolGuid;
384
385
386 #endif