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