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