]> git.proxmox.com Git - mirror_edk2.git/blame - MdePkg/Include/Protocol/ExtendedSalServiceClasses.h
ShellPkg/UefiHandleParsingLib: Remove some unused Guids
[mirror_edk2.git] / MdePkg / Include / Protocol / ExtendedSalServiceClasses.h
CommitLineData
41335d22 1/** @file\r
2 The standard set of Extended SAL service classes.\r
3\r
9095d37b 4 Copyright (c) 2009 - 2018, Intel Corporation. All rights reserved.<BR>\r
9344f092 5 SPDX-License-Identifier: BSD-2-Clause-Patent\r
41335d22 6\r
497a5fb1
SZ
7 @par Revision Reference:\r
8 This Protocol was introduced in PI Specification 1.2.\r
9\r
41335d22 10**/\r
11\r
12#ifndef _EXTENDED_SAL_SERVICE_CLASSES_H_\r
13#define _EXTENDED_SAL_SERVICE_CLASSES_H_\r
14\r
15///\r
16/// Extended SAL Base I/O Services Class\r
17///\r
18///@{\r
19#define EFI_EXTENDED_SAL_BASE_IO_SERVICES_PROTOCOL_GUID_LO 0x451531e15aea42b5\r
20#define EFI_EXTENDED_SAL_BASE_IO_SERVICES_PROTOCOL_GUID_HI 0xa6657525d5b831bc\r
21#define EFI_EXTENDED_SAL_BASE_IO_SERVICES_PROTOCOL_GUID \\r
22 { 0x5aea42b5, 0x31e1, 0x4515, {0xbc, 0x31, 0xb8, 0xd5, 0x25, 0x75, 0x65, 0xa6 } }\r
23\r
24typedef enum {\r
25 IoReadFunctionId,\r
26 IoWriteFunctionId,\r
27 MemReadFunctionId,\r
28 MemWriteFunctionId\r
29} EFI_EXTENDED_SAL_BASE_IO_SERVICES_FUNC_ID;\r
30///@}\r
31\r
32///\r
33/// Extended SAL Stall Services Class\r
34///\r
35///@{\r
36#define EFI_EXTENDED_SAL_STALL_SERVICES_PROTOCOL_GUID_LO 0x4d8cac2753a58d06\r
37#define EFI_EXTENDED_SAL_STALL_SERVICES_PROTOCOL_GUID_HI 0x704165808af0e9b5\r
38#define EFI_EXTENDED_SAL_STALL_SERVICES_PROTOCOL_GUID \\r
39 { 0x53a58d06, 0xac27, 0x4d8c, {0xb5, 0xe9, 0xf0, 0x8a, 0x80, 0x65, 0x41, 0x70 } }\r
40\r
41typedef enum {\r
42 StallFunctionId\r
43} EFI_EXTENDED_SAL_STALL_FUNC_ID;\r
44///@}\r
45\r
46///\r
47/// Extended SAL Real Time Clock Services Class\r
48///\r
49///@{\r
50#define EFI_EXTENDED_SAL_RTC_SERVICES_PROTOCOL_GUID_LO 0x4d02efdb7e97a470\r
9095d37b 51#define EFI_EXTENDED_SAL_RTC_SERVICES_PROTOCOL_GUID_HI 0x96a27bd29061ce8f\r
41335d22 52#define EFI_EXTENDED_SAL_RTC_SERVICES_PROTOCOL_GUID \\r
53 { 0x7e97a470, 0xefdb, 0x4d02, {0x8f, 0xce, 0x61, 0x90, 0xd2, 0x7b, 0xa2, 0x96 } }\r
54\r
55typedef enum {\r
56 GetTimeFunctionId,\r
57 SetTimeFunctionId,\r
58 GetWakeupTimeFunctionId,\r
59 SetWakeupTimeFunctionId,\r
60 GetRtcFreqFunctionId,\r
61 InitializeThresholdFunctionId,\r
62 BumpThresholdCountFunctionId,\r
63 GetThresholdCountFunctionId\r
64} EFI_EXTENDED_SAL_RTC_SERVICES_FUNC_ID;\r
65///@}\r
66\r
67///\r
68/// Extended SAL Variable Services Class\r
69///\r
70///@{\r
9095d37b 71#define EFI_EXTENDED_SAL_VARIABLE_SERVICES_PROTOCOL_GUID_LO 0x4370c6414ecb6c53\r
41335d22 72#define EFI_EXTENDED_SAL_VARIABLE_SERVICES_PROTOCOL_GUID_HI 0x78836e490e3bb28c\r
73#define EFI_EXTENDED_SAL_VARIABLE_SERVICES_PROTOCOL_GUID \\r
74 { 0x4ecb6c53, 0xc641, 0x4370, {0x8c, 0xb2, 0x3b, 0x0e, 0x49, 0x6e, 0x83, 0x78 } }\r
75\r
76typedef enum {\r
77 EsalGetVariableFunctionId,\r
78 EsalGetNextVariableNameFunctionId,\r
79 EsalSetVariableFunctionId,\r
80 EsalQueryVariableInfoFunctionId\r
81} EFI_EXTENDED_SAL_VARIABLE_SERVICES_FUNC_ID;\r
82///@}\r
83\r
84///\r
85/// Extended SAL Monotonic Counter Services Class\r
86///\r
87///@{\r
88#define EFI_EXTENDED_SAL_MTC_SERVICES_PROTOCOL_GUID_LO 0x408b75e8899afd18\r
89#define EFI_EXTENDED_SAL_MTC_SERVICES_PROTOCOL_GUID_HI 0x54f4cd7e2e6e1aa4\r
90#define EFI_EXTENDED_SAL_MTC_SERVICES_PROTOCOL_GUID \\r
91 { 0x899afd18, 0x75e8, 0x408b, {0xa4, 0x1a, 0x6e, 0x2e, 0x7e, 0xcd, 0xf4, 0x54 } }\r
92\r
93typedef enum {\r
94 GetNextHighMonotonicCountFunctionId\r
95} EFI_EXTENDED_SAL_MTC_SERVICES_FUNC_ID;\r
96///@}\r
97\r
98///\r
99/// Extended SAL Reset Services Class\r
100///\r
101///@{\r
102#define EFI_EXTENDED_SAL_RESET_SERVICES_PROTOCOL_GUID_LO 0x46f58ce17d019990\r
103#define EFI_EXTENDED_SAL_RESET_SERVICES_PROTOCOL_GUID_HI 0xa06a6798513c76a7\r
104#define EFI_EXTENDED_SAL_RESET_SERVICES_PROTOCOL_GUID \\r
105 { 0x7d019990, 0x8ce1, 0x46f5, {0xa7, 0x76, 0x3c, 0x51, 0x98, 0x67, 0x6a, 0xa0 } }\r
106\r
107typedef enum {\r
108 ResetSystemFunctionId\r
109} EFI_EXTENDED_SAL_RESET_SERVICES_FUNC_ID;\r
110///@}\r
111\r
112///\r
113/// Extended SAL Status Code Services Class\r
114///\r
115///@{\r
116#define EFI_EXTENDED_SAL_STATUS_CODE_SERVICES_PROTOCOL_GUID_LO 0x420f55e9dbd91d\r
117#define EFI_EXTENDED_SAL_STATUS_CODE_SERVICES_PROTOCOL_GUID_HI 0x4fb437849f5e3996\r
118#define EFI_EXTENDED_SAL_STATUS_CODE_SERVICES_PROTOCOL_GUID \\r
119 { 0xdbd91d, 0x55e9, 0x420f, {0x96, 0x39, 0x5e, 0x9f, 0x84, 0x37, 0xb4, 0x4f } }\r
120\r
121typedef enum {\r
122 ReportStatusCodeServiceFunctionId\r
123} EFI_EXTENDED_SAL_STATUS_CODE_SERVICES_FUNC_ID;\r
124///@}\r
125\r
126///\r
127/// Extended SAL Firmware Volume Block Services Class\r
128///\r
129///@{\r
130#define EFI_EXTENDED_SAL_FV_BLOCK_SERVICES_PROTOCOL_GUID_LO 0x4f1dbcbba2271df1\r
131#define EFI_EXTENDED_SAL_FV_BLOCK_SERVICES_PROTOCOL_GUID_HI 0x1a072f17bc06a998\r
132#define EFI_EXTENDED_SAL_FV_BLOCK_SERVICES_PROTOCOL_GUID \\r
133 { 0xa2271df1, 0xbcbb, 0x4f1d, {0x98, 0xa9, 0x06, 0xbc, 0x17, 0x2f, 0x07, 0x1a } }\r
134\r
135typedef enum {\r
136 ReadFunctionId,\r
137 WriteFunctionId,\r
138 EraseBlockFunctionId,\r
139 GetVolumeAttributesFunctionId,\r
140 SetVolumeAttributesFunctionId,\r
141 GetPhysicalAddressFunctionId,\r
142 GetBlockSizeFunctionId,\r
143} EFI_EXTENDED_SAL_FV_BLOCK_SERVICES_FUNC_ID;\r
144///@}\r
145\r
146///\r
147/// Extended SAL MP Services Class\r
148///\r
149///@{\r
150#define EFI_EXTENDED_SAL_MP_SERVICES_PROTOCOL_GUID_LO 0x4dc0cf18697d81a2\r
151#define EFI_EXTENDED_SAL_MP_SERVICES_PROTOCOL_GUID_HI 0x3f8a613b11060d9e\r
152#define EFI_EXTENDED_SAL_MP_SERVICES_PROTOCOL_GUID \\r
153 { 0x697d81a2, 0xcf18, 0x4dc0, {0x9e, 0x0d, 0x06, 0x11, 0x3b, 0x61, 0x8a, 0x3f } }\r
154\r
155typedef enum {\r
156 AddCpuDataFunctionId,\r
157 RemoveCpuDataFunctionId,\r
158 ModifyCpuDataFunctionId,\r
159 GetCpuDataByIDFunctionId,\r
160 GetCpuDataByIndexFunctionId,\r
161 SendIpiFunctionId,\r
162 CurrentProcInfoFunctionId,\r
163 NumProcessorsFunctionId,\r
164 SetMinStateFunctionId,\r
9095d37b 165 GetMinStateFunctionId\r
41335d22 166} EFI_EXTENDED_SAL_MP_SERVICES_FUNC_ID;\r
167///@}\r
168\r
169///\r
170/// Extended SAL PAL Services Class\r
171///\r
172///@{\r
173#define EFI_EXTENDED_SAL_PAL_SERVICES_PROTOCOL_GUID_LO 0x438d0fc2e1cd9d21\r
174#define EFI_EXTENDED_SAL_PAL_SERVICES_PROTOCOL_GUID_HI 0x571e966de6040397\r
175#define EFI_EXTENDED_SAL_PAL_SERVICES_PROTOCOL_GUID \\r
176 { 0xe1cd9d21, 0x0fc2, 0x438d, {0x97, 0x03, 0x04, 0xe6, 0x6d, 0x96, 0x1e, 0x57 } }\r
177\r
178typedef enum {\r
179 PalProcFunctionId,\r
180 SetNewPalEntryFunctionId,\r
181 GetNewPalEntryFunctionId,\r
182 EsalUpdatePalFunctionId\r
183} EFI_EXTENDED_SAL_PAL_SERVICES_FUNC_ID;\r
184///@}\r
185\r
186///\r
187/// Extended SAL Base Services Class\r
188///\r
189///@{\r
190#define EFI_EXTENDED_SAL_BASE_SERVICES_PROTOCOL_GUID_LO 0x41c30fe0d9e9fa06\r
191#define EFI_EXTENDED_SAL_BASE_SERVICES_PROTOCOL_GUID_HI 0xf894335a4283fb96\r
192#define EFI_EXTENDED_SAL_BASE_SERVICES_PROTOCOL_GUID \\r
193 { 0xd9e9fa06, 0x0fe0, 0x41c3, {0x96, 0xfb, 0x83, 0x42, 0x5a, 0x33, 0x94, 0xf8 } }\r
194\r
195typedef enum {\r
196 SalSetVectorsFunctionId,\r
197 SalMcRendezFunctionId,\r
198 SalMcSetParamsFunctionId,\r
199 EsalGetVectorsFunctionId,\r
200 EsalMcGetParamsFunctionId,\r
201 EsalMcGetMcParamsFunctionId,\r
202 EsalGetMcCheckinFlagsFunctionId,\r
203 EsalGetPlatformBaseFreqFunctionId,\r
9095d37b 204 EsalPhysicalIdInfoFunctionId,\r
41335d22 205 EsalRegisterPhysicalAddrFunctionId\r
206} EFI_EXTENDED_SAL_BASE_SERVICES_FUNC_ID;\r
207///@}\r
208\r
209///\r
210/// Extended SAL MCA Services Class\r
211///\r
212///@{\r
213#define EFI_EXTENDED_SAL_MCA_SERVICES_PROTOCOL_GUID_LO 0x42b16cc72a591128\r
214#define EFI_EXTENDED_SAL_MCA_SERVICES_PROTOCOL_GUID_HI 0xbb2d683b9358f08a\r
215#define EFI_EXTENDED_SAL_MCA_SERVICES_PROTOCOL_GUID \\r
216 { 0x2a591128, 0x6cc7, 0x42b1, {0x8a, 0xf0, 0x58, 0x93, 0x3b, 0x68, 0x2d, 0xbb } }\r
217\r
218typedef enum {\r
219 McaGetStateInfoFunctionId,\r
220 McaRegisterCpuFunctionId\r
221} EFI_EXTENDED_SAL_MCA_SERVICES_FUNC_ID;\r
222///@}\r
223\r
224///\r
225/// Extended SAL PCI Services Class\r
226///\r
227///@{\r
228#define EFI_EXTENDED_SAL_PCI_SERVICES_PROTOCOL_GUID_LO 0x4905ad66a46b1a31\r
229#define EFI_EXTENDED_SAL_PCI_SERVICES_PROTOCOL_GUID_HI 0x6330dc59462bf692\r
230#define EFI_EXTENDED_SAL_PCI_SERVICES_PROTOCOL_GUID \\r
231 { 0xa46b1a31, 0xad66, 0x4905, {0x92, 0xf6, 0x2b, 0x46, 0x59, 0xdc, 0x30, 0x63 } }\r
232\r
233typedef enum {\r
234 SalPciConfigReadFunctionId,\r
235 SalPciConfigWriteFunctionId\r
236} EFI_EXTENDED_SAL_PCI_SERVICES_FUNC_ID;\r
237///@}\r
238\r
239///\r
240/// Extended SAL Cache Services Class\r
241///\r
242///@{\r
243#define EFI_EXTENDED_SAL_CACHE_SERVICES_PROTOCOL_GUID_LO 0x4ba52743edc9494\r
244#define EFI_EXTENDED_SAL_CACHE_SERVICES_PROTOCOL_GUID_HI 0x88f11352ef0a1888\r
245#define EFI_EXTENDED_SAL_CACHE_SERVICES_PROTOCOL_GUID \\r
246 { 0xedc9494, 0x2743, 0x4ba5, { 0x88, 0x18, 0x0a, 0xef, 0x52, 0x13, 0xf1, 0x88 } }\r
247\r
248typedef enum {\r
249 SalCacheInitFunctionId,\r
250 SalCacheFlushFunctionId\r
251} EFI_EXTENDED_SAL_CACHE_SERVICES_FUNC_ID;\r
252///@}\r
253\r
254///\r
255/// Extended SAL MCA Log Services Class\r
256///\r
257///@{\r
258#define EFI_EXTENDED_SAL_MCA_LOG_SERVICES_PROTOCOL_GUID_LO 0x4c0338a3cb3fd86e\r
259#define EFI_EXTENDED_SAL_MCA_LOG_SERVICES_PROTOCOL_GUID_HI 0x7aaba2a3cf905c9a\r
260#define EFI_EXTENDED_SAL_MCA_LOG_SERVICES_PROTOCOL_GUID \\r
261 { 0xcb3fd86e, 0x38a3, 0x4c03, {0x9a, 0x5c, 0x90, 0xcf, 0xa3, 0xa2, 0xab, 0x7a } }\r
262\r
263typedef enum {\r
264 SalGetStateInfoFunctionId,\r
265 SalGetStateInfoSizeFunctionId,\r
266 SalClearStateInfoFunctionId,\r
267 EsalGetStateBufferFunctionId,\r
268 EsalSaveStateBufferFunctionId\r
269} EFI_EXTENDED_SAL_MCA_LOG_SERVICES_FUNC_ID;\r
270///@}\r
271\r
272#endif\r