79964ac8 |
1 | /** @file\r |
2 | Status Code Definitions, according to Intel Platform Innovation Framework\r |
3 | for EFI Status Codes Specification\r |
4 | \r |
5 | The file is divided into sections for ease of use.\r |
6 | \r |
7 | <pre>\r |
8 | Section: Contents:\r |
9 | 1 General Status Code Definitions\r |
10 | 2 Class definitions\r |
11 | 3 Computing Unit Subclasses, Progress and Error Codes\r |
12 | 4 Peripheral Subclasses, Progress and Error Codes.\r |
13 | 5 IO Bus Subclasses, Progress and Error Codes.\r |
14 | 6 Software Subclasses, Progress and Error Codes.\r |
15 | 7 Debug Codes\r |
16 | </pre>\r |
17 | \r |
18 | Copyright (c) 2007, Intel Corporation\r |
19 | All rights reserved. This program and the accompanying materials\r |
20 | are licensed and made available under the terms and conditions of the BSD License\r |
21 | which accompanies this distribution. The full text of the license may be found at\r |
22 | http://opensource.org/licenses/bsd-license.php\r |
23 | \r |
24 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r |
25 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r |
26 | \r |
27 | Module Name: StatusCode.h\r |
28 | \r |
29 | @par Revision Reference:\r |
30 | Version 0.92.\r |
31 | \r |
32 | **/\r |
33 | \r |
34 | #ifndef _FRAMEWORK_STATUS_CODE_H_\r |
35 | #define _FRAMEWORK_STATUS_CODE_H_\r |
36 | \r |
b80fbe85 |
37 | #include <PiPei.h>\r |
79964ac8 |
38 | \r |
39 | //\r |
40 | // /////////////////////////////////////////////////////////////////////////////\r |
41 | // Section 1\r |
42 | ////////////////////////////////////////////////////////////////////////////////\r |
43 | \r |
44 | //\r |
45 | // Data Hub Status Code class record definition\r |
46 | // This structure isn't adopted by PI, so is defined here.\r |
47 | //\r |
48 | typedef struct {\r |
49 | EFI_STATUS_CODE_TYPE CodeType;\r |
50 | EFI_STATUS_CODE_VALUE Value;\r |
51 | UINT32 Instance;\r |
52 | EFI_GUID CallerId;\r |
53 | EFI_STATUS_CODE_DATA Data;\r |
54 | } DATA_HUB_STATUS_CODE_DATA_RECORD;\r |
55 | \r |
56 | //\r |
57 | // /////////////////////////////////////////////////////////////////////////////\r |
58 | // Section 2\r |
59 | ///////////////////////////////////////////////////////////////////////////////\r |
60 | //\r |
61 | // Class definitions\r |
62 | // Values of 4-127 are reserved for future use by this\r |
63 | // specification.\r |
64 | // Values in the range 127-255 are reserved for OEM use.\r |
65 | //\r |
66 | #define EFI_COMPUTING_UNIT 0x00000000\r |
67 | #define EFI_PERIPHERAL 0x01000000\r |
68 | #define EFI_IO_BUS 0x02000000\r |
69 | #define EFI_SOFTWARE 0x03000000\r |
70 | \r |
71 | //\r |
72 | // General partitioning scheme for Progress and Error Codes are\r |
73 | // 0x0000-0x0FFF - Shared by all sub-classes in a given class\r |
74 | // 0x1000-0x7FFF - Subclass Specific\r |
75 | // 0x8000-0xFFFF - OEM specific\r |
76 | //\r |
77 | #define EFI_SUBCLASS_SPECIFIC 0x1000\r |
78 | #define EFI_OEM_SPECIFIC 0x8000\r |
79 | \r |
80 | //\r |
81 | // /////////////////////////////////////////////////////////////////////////////\r |
82 | // Section 3\r |
83 | ///////////////////////////////////////////////////////////////////////////////\r |
84 | //\r |
85 | // Computing Unit Subclass definitions.\r |
86 | // Values of 8-127 are reserved for future use by this\r |
87 | // specification.\r |
88 | // Values of 128-255 are reserved for OEM use.\r |
89 | //\r |
90 | #define EFI_COMPUTING_UNIT_UNSPECIFIED (EFI_COMPUTING_UNIT | 0x00000000)\r |
91 | #define EFI_COMPUTING_UNIT_HOST_PROCESSOR (EFI_COMPUTING_UNIT | 0x00010000)\r |
92 | #define EFI_COMPUTING_UNIT_FIRMWARE_PROCESSOR (EFI_COMPUTING_UNIT | 0x00020000)\r |
93 | #define EFI_COMPUTING_UNIT_IO_PROCESSOR (EFI_COMPUTING_UNIT | 0x00030000)\r |
94 | #define EFI_COMPUTING_UNIT_CACHE (EFI_COMPUTING_UNIT | 0x00040000)\r |
95 | #define EFI_COMPUTING_UNIT_MEMORY (EFI_COMPUTING_UNIT | 0x00050000)\r |
96 | #define EFI_COMPUTING_UNIT_CHIPSET (EFI_COMPUTING_UNIT | 0x00060000)\r |
97 | \r |
98 | //\r |
99 | // Computing Unit Class Progress Code definitions.\r |
100 | // These are shared by all subclasses.\r |
101 | //\r |
102 | #define EFI_CU_PC_INIT_BEGIN 0x00000000\r |
103 | #define EFI_CU_PC_INIT_END 0x00000001\r |
104 | \r |
105 | //\r |
106 | // Computing Unit Unspecified Subclass Progress Code definitions.\r |
107 | //\r |
108 | //\r |
109 | // Computing Unit Host Processor Subclass Progress Code definitions.\r |
110 | //\r |
111 | #define EFI_CU_HP_PC_POWER_ON_INIT (EFI_SUBCLASS_SPECIFIC | 0x00000000)\r |
112 | #define EFI_CU_HP_PC_CACHE_INIT (EFI_SUBCLASS_SPECIFIC | 0x00000001)\r |
113 | #define EFI_CU_HP_PC_RAM_INIT (EFI_SUBCLASS_SPECIFIC | 0x00000002)\r |
114 | #define EFI_CU_HP_PC_MEMORY_CONTROLLER_INIT (EFI_SUBCLASS_SPECIFIC | 0x00000003)\r |
115 | #define EFI_CU_HP_PC_IO_INIT (EFI_SUBCLASS_SPECIFIC | 0x00000004)\r |
116 | #define EFI_CU_HP_PC_BSP_SELECT (EFI_SUBCLASS_SPECIFIC | 0x00000005)\r |
117 | #define EFI_CU_HP_PC_BSP_RESELECT (EFI_SUBCLASS_SPECIFIC | 0x00000006)\r |
118 | #define EFI_CU_HP_PC_AP_INIT (EFI_SUBCLASS_SPECIFIC | 0x00000007)\r |
119 | #define EFI_CU_HP_PC_SMM_INIT (EFI_SUBCLASS_SPECIFIC | 0x00000008)\r |
120 | \r |
121 | //\r |
122 | // Computing Unit Firmware Processor Subclass Progress Code definitions.\r |
123 | //\r |
124 | //\r |
125 | // Computing Unit IO Processor Subclass Progress Code definitions.\r |
126 | //\r |
127 | //\r |
128 | // Computing Unit Cache Subclass Progress Code definitions.\r |
129 | //\r |
130 | #define EFI_CU_CACHE_PC_PRESENCE_DETECT (EFI_SUBCLASS_SPECIFIC | 0x00000000)\r |
131 | #define EFI_CU_CACHE_PC_CONFIGURATION (EFI_SUBCLASS_SPECIFIC | 0x00000001)\r |
132 | \r |
133 | //\r |
134 | // Computing Unit Memory Subclass Progress Code definitions.\r |
135 | //\r |
136 | #define EFI_CU_MEMORY_PC_SPD_READ (EFI_SUBCLASS_SPECIFIC | 0x00000000)\r |
137 | #define EFI_CU_MEMORY_PC_PRESENCE_DETECT (EFI_SUBCLASS_SPECIFIC | 0x00000001)\r |
138 | #define EFI_CU_MEMORY_PC_TIMING (EFI_SUBCLASS_SPECIFIC | 0x00000002)\r |
139 | #define EFI_CU_MEMORY_PC_CONFIGURING (EFI_SUBCLASS_SPECIFIC | 0x00000003)\r |
140 | #define EFI_CU_MEMORY_PC_OPTIMIZING (EFI_SUBCLASS_SPECIFIC | 0x00000004)\r |
141 | #define EFI_CU_MEMORY_PC_INIT (EFI_SUBCLASS_SPECIFIC | 0x00000005)\r |
142 | #define EFI_CU_MEMORY_PC_TEST (EFI_SUBCLASS_SPECIFIC | 0x00000006)\r |
143 | \r |
144 | //\r |
145 | // Computing Unit Chipset Subclass Progress Code definitions.\r |
146 | //\r |
147 | //\r |
148 | // Computing Unit Class Error Code definitions.\r |
149 | // These are shared by all subclasses.\r |
150 | //\r |
151 | #define EFI_CU_EC_NON_SPECIFIC 0x00000000\r |
152 | #define EFI_CU_EC_DISABLED 0x00000001\r |
153 | #define EFI_CU_EC_NOT_SUPPORTED 0x00000002\r |
154 | #define EFI_CU_EC_NOT_DETECTED 0x00000003\r |
155 | #define EFI_CU_EC_NOT_CONFIGURED 0x00000004\r |
156 | \r |
157 | //\r |
158 | // Computing Unit Unspecified Subclass Error Code definitions.\r |
159 | //\r |
160 | //\r |
161 | // Computing Unit Host Processor Subclass Error Code definitions.\r |
162 | //\r |
163 | #define EFI_CU_HP_EC_INVALID_TYPE (EFI_SUBCLASS_SPECIFIC | 0x00000000)\r |
164 | #define EFI_CU_HP_EC_INVALID_SPEED (EFI_SUBCLASS_SPECIFIC | 0x00000001)\r |
165 | #define EFI_CU_HP_EC_MISMATCH (EFI_SUBCLASS_SPECIFIC | 0x00000002)\r |
166 | #define EFI_CU_HP_EC_TIMER_EXPIRED (EFI_SUBCLASS_SPECIFIC | 0x00000003)\r |
167 | #define EFI_CU_HP_EC_SELF_TEST (EFI_SUBCLASS_SPECIFIC | 0x00000004)\r |
168 | #define EFI_CU_HP_EC_INTERNAL (EFI_SUBCLASS_SPECIFIC | 0x00000005)\r |
169 | #define EFI_CU_HP_EC_THERMAL (EFI_SUBCLASS_SPECIFIC | 0x00000006)\r |
170 | #define EFI_CU_HP_EC_LOW_VOLTAGE (EFI_SUBCLASS_SPECIFIC | 0x00000007)\r |
171 | #define EFI_CU_HP_EC_HIGH_VOLTAGE (EFI_SUBCLASS_SPECIFIC | 0x00000008)\r |
172 | #define EFI_CU_HP_EC_CACHE (EFI_SUBCLASS_SPECIFIC | 0x00000009)\r |
173 | #define EFI_CU_HP_EC_MICROCODE_UPDATE (EFI_SUBCLASS_SPECIFIC | 0x0000000A)\r |
174 | #define EFI_CU_HP_EC_CORRECTABLE (EFI_SUBCLASS_SPECIFIC | 0x0000000B)\r |
175 | #define EFI_CU_HP_EC_UNCORRECTABLE (EFI_SUBCLASS_SPECIFIC | 0x0000000C)\r |
176 | #define EFI_CU_HP_EC_NO_MICROCODE_UPDATE (EFI_SUBCLASS_SPECIFIC | 0x0000000D)\r |
177 | \r |
178 | //\r |
179 | // Computing Unit Firmware Processor Subclass Error Code definitions.\r |
180 | //\r |
181 | #define EFI_CU_FP_EC_HARD_FAIL (EFI_SUBCLASS_SPECIFIC | 0x00000000)\r |
182 | #define EFI_CU_FP_EC_SOFT_FAIL (EFI_SUBCLASS_SPECIFIC | 0x00000001)\r |
183 | #define EFI_CU_FP_EC_COMM_ERROR (EFI_SUBCLASS_SPECIFIC | 0x00000002)\r |
184 | \r |
185 | //\r |
186 | // Computing Unit IO Processor Subclass Error Code definitions.\r |
187 | //\r |
188 | //\r |
189 | // Computing Unit Cache Subclass Error Code definitions.\r |
190 | //\r |
191 | #define EFI_CU_CACHE_EC_INVALID_TYPE (EFI_SUBCLASS_SPECIFIC | 0x00000000)\r |
192 | #define EFI_CU_CACHE_EC_INVALID_SPEED (EFI_SUBCLASS_SPECIFIC | 0x00000001)\r |
193 | #define EFI_CU_CACHE_EC_INVALID_SIZE (EFI_SUBCLASS_SPECIFIC | 0x00000002)\r |
194 | #define EFI_CU_CACHE_EC_MISMATCH (EFI_SUBCLASS_SPECIFIC | 0x00000003)\r |
195 | \r |
196 | //\r |
197 | // Computing Unit Memory Subclass Error Code definitions.\r |
198 | //\r |
199 | #define EFI_CU_MEMORY_EC_INVALID_TYPE (EFI_SUBCLASS_SPECIFIC | 0x00000000)\r |
200 | #define EFI_CU_MEMORY_EC_INVALID_SPEED (EFI_SUBCLASS_SPECIFIC | 0x00000001)\r |
201 | #define EFI_CU_MEMORY_EC_CORRECTABLE (EFI_SUBCLASS_SPECIFIC | 0x00000002)\r |
202 | #define EFI_CU_MEMORY_EC_UNCORRECTABLE (EFI_SUBCLASS_SPECIFIC | 0x00000003)\r |
203 | #define EFI_CU_MEMORY_EC_SPD_FAIL (EFI_SUBCLASS_SPECIFIC | 0x00000004)\r |
204 | #define EFI_CU_MEMORY_EC_INVALID_SIZE (EFI_SUBCLASS_SPECIFIC | 0x00000005)\r |
205 | #define EFI_CU_MEMORY_EC_MISMATCH (EFI_SUBCLASS_SPECIFIC | 0x00000006)\r |
206 | #define EFI_CU_MEMORY_EC_S3_RESUME_FAIL (EFI_SUBCLASS_SPECIFIC | 0x00000007)\r |
207 | #define EFI_CU_MEMORY_EC_UPDATE_FAIL (EFI_SUBCLASS_SPECIFIC | 0x00000008)\r |
208 | #define EFI_CU_MEMORY_EC_NONE_DETECTED (EFI_SUBCLASS_SPECIFIC | 0x00000009)\r |
209 | #define EFI_CU_MEMORY_EC_NONE_USEFUL (EFI_SUBCLASS_SPECIFIC | 0x0000000A)\r |
210 | \r |
211 | //\r |
212 | // Computing Unit Chipset Subclass Error Code definitions.\r |
213 | //\r |
214 | \r |
215 | ///////////////////////////////////////////////////////////////////////////////\r |
216 | // Section 4\r |
217 | ///////////////////////////////////////////////////////////////////////////////\r |
218 | //\r |
219 | // Peripheral Subclass definitions.\r |
220 | // Values of 12-127 are reserved for future use by this\r |
221 | // specification.\r |
222 | // Values of 128-255 are reserved for OEM use.\r |
223 | //\r |
224 | #define EFI_PERIPHERAL_UNSPECIFIED (EFI_PERIPHERAL | 0x00000000)\r |
225 | #define EFI_PERIPHERAL_KEYBOARD (EFI_PERIPHERAL | 0x00010000)\r |
226 | #define EFI_PERIPHERAL_MOUSE (EFI_PERIPHERAL | 0x00020000)\r |
227 | #define EFI_PERIPHERAL_LOCAL_CONSOLE (EFI_PERIPHERAL | 0x00030000)\r |
228 | #define EFI_PERIPHERAL_REMOTE_CONSOLE (EFI_PERIPHERAL | 0x00040000)\r |
229 | #define EFI_PERIPHERAL_SERIAL_PORT (EFI_PERIPHERAL | 0x00050000)\r |
230 | #define EFI_PERIPHERAL_PARALLEL_PORT (EFI_PERIPHERAL | 0x00060000)\r |
231 | #define EFI_PERIPHERAL_FIXED_MEDIA (EFI_PERIPHERAL | 0x00070000)\r |
232 | #define EFI_PERIPHERAL_REMOVABLE_MEDIA (EFI_PERIPHERAL | 0x00080000)\r |
233 | #define EFI_PERIPHERAL_AUDIO_INPUT (EFI_PERIPHERAL | 0x00090000)\r |
234 | #define EFI_PERIPHERAL_AUDIO_OUTPUT (EFI_PERIPHERAL | 0x000A0000)\r |
235 | #define EFI_PERIPHERAL_LCD_DEVICE (EFI_PERIPHERAL | 0x000B0000)\r |
236 | #define EFI_PERIPHERAL_NETWORK (EFI_PERIPHERAL | 0x000C0000)\r |
237 | \r |
238 | //\r |
239 | // Peripheral Class Progress Code definitions.\r |
240 | // These are shared by all subclasses.\r |
241 | //\r |
242 | #define EFI_P_PC_INIT 0x00000000\r |
243 | #define EFI_P_PC_RESET 0x00000001\r |
244 | #define EFI_P_PC_DISABLE 0x00000002\r |
245 | #define EFI_P_PC_PRESENCE_DETECT 0x00000003\r |
246 | #define EFI_P_PC_ENABLE 0x00000004\r |
247 | #define EFI_P_PC_RECONFIG 0x00000005\r |
248 | #define EFI_P_PC_DETECTED 0x00000006\r |
249 | \r |
250 | //\r |
251 | // Peripheral Class Unspecified Subclass Progress Code definitions.\r |
252 | //\r |
253 | //\r |
254 | // Peripheral Class Keyboard Subclass Progress Code definitions.\r |
255 | //\r |
256 | #define EFI_P_KEYBOARD_PC_CLEAR_BUFFER (EFI_SUBCLASS_SPECIFIC | 0x00000000)\r |
257 | #define EFI_P_KEYBOARD_PC_SELF_TEST (EFI_SUBCLASS_SPECIFIC | 0x00000001)\r |
258 | \r |
259 | //\r |
260 | // Peripheral Class Mouse Subclass Progress Code definitions.\r |
261 | //\r |
262 | #define EFI_P_MOUSE_PC_SELF_TEST (EFI_SUBCLASS_SPECIFIC | 0x00000000)\r |
263 | \r |
264 | //\r |
265 | // Peripheral Class Local Console Subclass Progress Code definitions.\r |
266 | //\r |
267 | //\r |
268 | // Peripheral Class Remote Console Subclass Progress Code definitions.\r |
269 | //\r |
270 | //\r |
271 | // Peripheral Class Serial Port Subclass Progress Code definitions.\r |
272 | //\r |
273 | #define EFI_P_SERIAL_PORT_PC_CLEAR_BUFFER (EFI_SUBCLASS_SPECIFIC | 0x00000000)\r |
274 | \r |
275 | //\r |
276 | // Peripheral Class Parallel Port Subclass Progress Code definitions.\r |
277 | //\r |
278 | //\r |
279 | // Peripheral Class Fixed Media Subclass Progress Code definitions.\r |
280 | //\r |
281 | //\r |
282 | // Peripheral Class Removable Media Subclass Progress Code definitions.\r |
283 | //\r |
284 | //\r |
285 | // Peripheral Class Audio Input Subclass Progress Code definitions.\r |
286 | //\r |
287 | //\r |
288 | // Peripheral Class Audio Output Subclass Progress Code definitions.\r |
289 | //\r |
290 | //\r |
291 | // Peripheral Class LCD Device Subclass Progress Code definitions.\r |
292 | //\r |
293 | //\r |
294 | // Peripheral Class Network Subclass Progress Code definitions.\r |
295 | //\r |
296 | //\r |
297 | // Peripheral Class Error Code definitions.\r |
298 | // These are shared by all subclasses.\r |
299 | //\r |
300 | #define EFI_P_EC_NON_SPECIFIC 0x00000000\r |
301 | #define EFI_P_EC_DISABLED 0x00000001\r |
302 | #define EFI_P_EC_NOT_SUPPORTED 0x00000002\r |
303 | #define EFI_P_EC_NOT_DETECTED 0x00000003\r |
304 | #define EFI_P_EC_NOT_CONFIGURED 0x00000004\r |
305 | #define EFI_P_EC_INTERFACE_ERROR 0x00000005\r |
306 | #define EFI_P_EC_CONTROLLER_ERROR 0x00000006\r |
307 | #define EFI_P_EC_INPUT_ERROR 0x00000007\r |
308 | #define EFI_P_EC_OUTPUT_ERROR 0x00000008\r |
309 | #define EFI_P_EC_RESOURCE_CONFLICT 0x00000009\r |
310 | \r |
311 | //\r |
312 | // Peripheral Class Unspecified Subclass Error Code definitions.\r |
313 | //\r |
314 | //\r |
315 | // Peripheral Class Keyboard Subclass Error Code definitions.\r |
316 | //\r |
317 | #define EFI_P_KEYBOARD_EC_LOCKED (EFI_SUBCLASS_SPECIFIC | 0x00000000)\r |
318 | #define EFI_P_KEYBOARD_EC_STUCK_KEY (EFI_SUBCLASS_SPECIFIC | 0x00000001)\r |
319 | \r |
320 | //\r |
321 | // Peripheral Class Mouse Subclass Error Code definitions.\r |
322 | //\r |
323 | #define EFI_P_MOUSE_EC_LOCKED (EFI_SUBCLASS_SPECIFIC | 0x00000000)\r |
324 | \r |
325 | //\r |
326 | // Peripheral Class Local Console Subclass Error Code definitions.\r |
327 | //\r |
328 | //\r |
329 | // Peripheral Class Remote Console Subclass Error Code definitions.\r |
330 | //\r |
331 | //\r |
332 | // Peripheral Class Serial Port Subclass Error Code definitions.\r |
333 | //\r |
334 | //\r |
335 | // Peripheral Class Parallel Port Subclass Error Code definitions.\r |
336 | //\r |
337 | //\r |
338 | // Peripheral Class Fixed Media Subclass Error Code definitions.\r |
339 | //\r |
340 | //\r |
341 | // Peripheral Class Removable Media Subclass Error Code definitions.\r |
342 | //\r |
343 | //\r |
344 | // Peripheral Class Audio Input Subclass Error Code definitions.\r |
345 | //\r |
346 | //\r |
347 | // Peripheral Class Audio Output Subclass Error Code definitions.\r |
348 | //\r |
349 | //\r |
350 | // Peripheral Class LCD Device Subclass Error Code definitions.\r |
351 | //\r |
352 | //\r |
353 | // Peripheral Class Network Subclass Error Code definitions.\r |
354 | //\r |
355 | \r |
356 | ///////////////////////////////////////////////////////////////////////////////\r |
357 | // Section 5\r |
358 | ///////////////////////////////////////////////////////////////////////////////\r |
359 | //\r |
360 | // IO Bus Subclass definitions.\r |
361 | // Values of 14-127 are reserved for future use by this\r |
362 | // specification.\r |
363 | // Values of 128-255 are reserved for OEM use.\r |
364 | //\r |
365 | #define EFI_IO_BUS_UNSPECIFIED (EFI_IO_BUS | 0x00000000)\r |
366 | #define EFI_IO_BUS_PCI (EFI_IO_BUS | 0x00010000)\r |
367 | #define EFI_IO_BUS_USB (EFI_IO_BUS | 0x00020000)\r |
368 | #define EFI_IO_BUS_IBA (EFI_IO_BUS | 0x00030000)\r |
369 | #define EFI_IO_BUS_AGP (EFI_IO_BUS | 0x00040000)\r |
370 | #define EFI_IO_BUS_PC_CARD (EFI_IO_BUS | 0x00050000)\r |
371 | #define EFI_IO_BUS_LPC (EFI_IO_BUS | 0x00060000)\r |
372 | #define EFI_IO_BUS_SCSI (EFI_IO_BUS | 0x00070000)\r |
373 | #define EFI_IO_BUS_ATA_ATAPI (EFI_IO_BUS | 0x00080000)\r |
374 | #define EFI_IO_BUS_FC (EFI_IO_BUS | 0x00090000)\r |
375 | #define EFI_IO_BUS_IP_NETWORK (EFI_IO_BUS | 0x000A0000)\r |
376 | #define EFI_IO_BUS_SMBUS (EFI_IO_BUS | 0x000B0000)\r |
377 | #define EFI_IO_BUS_I2C (EFI_IO_BUS | 0x000C0000)\r |
378 | \r |
379 | //\r |
380 | // IO Bus Class Progress Code definitions.\r |
381 | // These are shared by all subclasses.\r |
382 | //\r |
383 | #define EFI_IOB_PC_INIT 0x00000000\r |
384 | #define EFI_IOB_PC_RESET 0x00000001\r |
385 | #define EFI_IOB_PC_DISABLE 0x00000002\r |
386 | #define EFI_IOB_PC_DETECT 0x00000003\r |
387 | #define EFI_IOB_PC_ENABLE 0x00000004\r |
388 | #define EFI_IOB_PC_RECONFIG 0x00000005\r |
389 | #define EFI_IOB_PC_HOTPLUG 0x00000006\r |
390 | \r |
391 | //\r |
392 | // IO Bus Class Unspecified Subclass Progress Code definitions.\r |
393 | //\r |
394 | //\r |
395 | // IO Bus Class PCI Subclass Progress Code definitions.\r |
396 | //\r |
397 | #define EFI_IOB_PCI_PC_BUS_ENUM (EFI_SUBCLASS_SPECIFIC | 0x00000000)\r |
398 | #define EFI_IOB_PCI_PC_RES_ALLOC (EFI_SUBCLASS_SPECIFIC | 0x00000001)\r |
399 | #define EFI_IOB_PCI_PC_HPC_INIT (EFI_SUBCLASS_SPECIFIC | 0x00000002)\r |
400 | \r |
401 | //\r |
402 | // IO Bus Class USB Subclass Progress Code definitions.\r |
403 | //\r |
404 | //\r |
405 | // IO Bus Class IBA Subclass Progress Code definitions.\r |
406 | //\r |
407 | //\r |
408 | // IO Bus Class AGP Subclass Progress Code definitions.\r |
409 | //\r |
410 | //\r |
411 | // IO Bus Class PC Card Subclass Progress Code definitions.\r |
412 | //\r |
413 | //\r |
414 | // IO Bus Class LPC Subclass Progress Code definitions.\r |
415 | //\r |
416 | //\r |
417 | // IO Bus Class SCSI Subclass Progress Code definitions.\r |
418 | //\r |
419 | //\r |
420 | // IO Bus Class ATA/ATAPI Subclass Progress Code definitions.\r |
421 | //\r |
422 | #define EFI_IOB_ATA_BUS_SMART_ENABLE (EFI_SUBCLASS_SPECIFIC | 0x00000000)\r |
423 | #define EFI_IOB_ATA_BUS_SMART_DISABLE (EFI_SUBCLASS_SPECIFIC | 0x00000001)\r |
424 | #define EFI_IOB_ATA_BUS_SMART_OVERTHRESHOLD (EFI_SUBCLASS_SPECIFIC | 0x00000002)\r |
425 | #define EFI_IOB_ATA_BUS_SMART_UNDERTHRESHOLD (EFI_SUBCLASS_SPECIFIC | 0x00000003)\r |
426 | \r |
427 | //\r |
428 | // IO Bus Class FC Subclass Progress Code definitions.\r |
429 | //\r |
430 | //\r |
431 | // IO Bus Class IP Network Subclass Progress Code definitions.\r |
432 | //\r |
433 | //\r |
434 | // IO Bus Class SMBUS Subclass Progress Code definitions.\r |
435 | //\r |
436 | //\r |
437 | // IO Bus Class I2C Subclass Progress Code definitions.\r |
438 | //\r |
439 | //\r |
440 | // IO Bus Class Error Code definitions.\r |
441 | // These are shared by all subclasses.\r |
442 | //\r |
443 | #define EFI_IOB_EC_NON_SPECIFIC 0x00000000\r |
444 | #define EFI_IOB_EC_DISABLED 0x00000001\r |
445 | #define EFI_IOB_EC_NOT_SUPPORTED 0x00000002\r |
446 | #define EFI_IOB_EC_NOT_DETECTED 0x00000003\r |
447 | #define EFI_IOB_EC_NOT_CONFIGURED 0x00000004\r |
448 | #define EFI_IOB_EC_INTERFACE_ERROR 0x00000005\r |
449 | #define EFI_IOB_EC_CONTROLLER_ERROR 0x00000006\r |
450 | #define EFI_IOB_EC_READ_ERROR 0x00000007\r |
451 | #define EFI_IOB_EC_WRITE_ERROR 0x00000008\r |
452 | #define EFI_IOB_EC_RESOURCE_CONFLICT 0x00000009\r |
453 | \r |
454 | //\r |
455 | // IO Bus Class Unspecified Subclass Error Code definitions.\r |
456 | //\r |
457 | //\r |
458 | // IO Bus Class PCI Subclass Error Code definitions.\r |
459 | //\r |
460 | #define EFI_IOB_PCI_EC_PERR (EFI_SUBCLASS_SPECIFIC | 0x00000000)\r |
461 | #define EFI_IOB_PCI_EC_SERR (EFI_SUBCLASS_SPECIFIC | 0x00000001)\r |
462 | \r |
463 | //\r |
464 | // IO Bus Class USB Subclass Error Code definitions.\r |
465 | //\r |
466 | //\r |
467 | // IO Bus Class IBA Subclass Error Code definitions.\r |
468 | //\r |
469 | //\r |
470 | // IO Bus Class AGP Subclass Error Code definitions.\r |
471 | //\r |
472 | //\r |
473 | // IO Bus Class PC Card Subclass Error Code definitions.\r |
474 | //\r |
475 | //\r |
476 | // IO Bus Class LPC Subclass Error Code definitions.\r |
477 | //\r |
478 | //\r |
479 | // IO Bus Class SCSI Subclass Error Code definitions.\r |
480 | //\r |
481 | //\r |
482 | // IO Bus Class ATA/ATAPI Subclass Error Code definitions.\r |
483 | //\r |
484 | #define EFI_IOB_ATA_BUS_SMART_NOTSUPPORTED (EFI_SUBCLASS_SPECIFIC | 0x00000000)\r |
485 | #define EFI_IOB_ATA_BUS_SMART_DISABLED (EFI_SUBCLASS_SPECIFIC | 0x00000001)\r |
486 | \r |
487 | //\r |
488 | // IO Bus Class FC Subclass Error Code definitions.\r |
489 | //\r |
490 | //\r |
491 | // IO Bus Class IP Network Subclass Error Code definitions.\r |
492 | //\r |
493 | //\r |
494 | // IO Bus Class SMBUS Subclass Error Code definitions.\r |
495 | //\r |
496 | //\r |
497 | // IO Bus Class I2C Subclass Error Code definitions.\r |
498 | //\r |
499 | \r |
500 | ///////////////////////////////////////////////////////////////////////////////\r |
501 | // Section 6\r |
502 | ///////////////////////////////////////////////////////////////////////////////\r |
503 | //\r |
504 | // Software Subclass definitions.\r |
505 | // Values of 14-127 are reserved for future use by this\r |
506 | // specification.\r |
507 | // Values of 128-255 are reserved for OEM use.\r |
508 | //\r |
509 | #define EFI_SOFTWARE_UNSPECIFIED (EFI_SOFTWARE | 0x00000000)\r |
510 | #define EFI_SOFTWARE_SEC (EFI_SOFTWARE | 0x00010000)\r |
511 | #define EFI_SOFTWARE_PEI_CORE (EFI_SOFTWARE | 0x00020000)\r |
512 | #define EFI_SOFTWARE_PEI_MODULE (EFI_SOFTWARE | 0x00030000)\r |
513 | #define EFI_SOFTWARE_DXE_CORE (EFI_SOFTWARE | 0x00040000)\r |
514 | #define EFI_SOFTWARE_DXE_BS_DRIVER (EFI_SOFTWARE | 0x00050000)\r |
515 | #define EFI_SOFTWARE_DXE_RT_DRIVER (EFI_SOFTWARE | 0x00060000)\r |
516 | #define EFI_SOFTWARE_SMM_DRIVER (EFI_SOFTWARE | 0x00070000)\r |
517 | #define EFI_SOFTWARE_EFI_APPLICATION (EFI_SOFTWARE | 0x00080000)\r |
518 | #define EFI_SOFTWARE_EFI_OS_LOADER (EFI_SOFTWARE | 0x00090000)\r |
519 | #define EFI_SOFTWARE_RT (EFI_SOFTWARE | 0x000A0000)\r |
520 | #define EFI_SOFTWARE_AL (EFI_SOFTWARE | 0x000B0000)\r |
521 | #define EFI_SOFTWARE_EBC_EXCEPTION (EFI_SOFTWARE | 0x000C0000)\r |
522 | #define EFI_SOFTWARE_IA32_EXCEPTION (EFI_SOFTWARE | 0x000D0000)\r |
523 | #define EFI_SOFTWARE_IPF_EXCEPTION (EFI_SOFTWARE | 0x000E0000)\r |
524 | #define EFI_SOFTWARE_PEI_SERVICE (EFI_SOFTWARE | 0x000F0000)\r |
525 | #define EFI_SOFTWARE_EFI_BOOT_SERVICE (EFI_SOFTWARE | 0x00100000)\r |
526 | #define EFI_SOFTWARE_EFI_RUNTIME_SERVICE (EFI_SOFTWARE | 0x00110000)\r |
527 | #define EFI_SOFTWARE_EFI_DXE_SERVICE (EFI_SOFTWARE | 0x00120000)\r |
528 | #define EFI_SOFTWARE_X64_EXCEPTION (EFI_SOFTWARE | 0x00130000)\r |
529 | \r |
530 | //\r |
531 | // Software Class Progress Code definitions.\r |
532 | // These are shared by all subclasses.\r |
533 | //\r |
534 | #define EFI_SW_PC_INIT 0x00000000\r |
535 | #define EFI_SW_PC_LOAD 0x00000001\r |
536 | #define EFI_SW_PC_INIT_BEGIN 0x00000002\r |
537 | #define EFI_SW_PC_INIT_END 0x00000003\r |
538 | #define EFI_SW_PC_AUTHENTICATE_BEGIN 0x00000004\r |
539 | #define EFI_SW_PC_AUTHENTICATE_END 0x00000005\r |
540 | #define EFI_SW_PC_INPUT_WAIT 0x00000006\r |
541 | #define EFI_SW_PC_USER_SETUP 0x00000007\r |
542 | \r |
543 | //\r |
544 | // Software Class Unspecified Subclass Progress Code definitions.\r |
545 | //\r |
546 | //\r |
547 | // Software Class SEC Subclass Progress Code definitions.\r |
548 | //\r |
549 | #define EFI_SW_SEC_PC_ENTRY_POINT (EFI_SUBCLASS_SPECIFIC | 0x00000000)\r |
550 | #define EFI_SW_SEC_PC_HANDOFF_TO_NEXT (EFI_SUBCLASS_SPECIFIC | 0x00000001)\r |
551 | \r |
552 | //\r |
553 | // Software Class PEI Core Subclass Progress Code definitions.\r |
554 | //\r |
555 | #define EFI_SW_PEI_CORE_PC_ENTRY_POINT (EFI_SUBCLASS_SPECIFIC | 0x00000000)\r |
556 | #define EFI_SW_PEI_CORE_PC_HANDOFF_TO_NEXT (EFI_SUBCLASS_SPECIFIC | 0x00000001)\r |
557 | #define EFI_SW_PEI_CORE_PC_RETURN_TO_LAST (EFI_SUBCLASS_SPECIFIC | 0x00000002)\r |
558 | \r |
559 | //\r |
560 | // Software Class PEI Module Subclass Progress Code definitions.\r |
561 | //\r |
562 | #define EFI_SW_PEIM_PC_RECOVERY_BEGIN (EFI_SUBCLASS_SPECIFIC | 0x00000000)\r |
563 | #define EFI_SW_PEIM_PC_CAPSULE_LOAD (EFI_SUBCLASS_SPECIFIC | 0x00000001)\r |
564 | #define EFI_SW_PEIM_PC_CAPSULE_START (EFI_SUBCLASS_SPECIFIC | 0x00000002)\r |
565 | #define EFI_SW_PEIM_PC_RECOVERY_USER (EFI_SUBCLASS_SPECIFIC | 0x00000003)\r |
566 | #define EFI_SW_PEIM_PC_RECOVERY_AUTO (EFI_SUBCLASS_SPECIFIC | 0x00000004)\r |
567 | \r |
568 | //\r |
569 | // Software Class DXE Core Subclass Progress Code definitions.\r |
570 | //\r |
571 | #define EFI_SW_DXE_CORE_PC_ENTRY_POINT (EFI_SUBCLASS_SPECIFIC | 0x00000000)\r |
572 | #define EFI_SW_DXE_CORE_PC_HANDOFF_TO_NEXT (EFI_SUBCLASS_SPECIFIC | 0x00000001)\r |
573 | #define EFI_SW_DXE_CORE_PC_RETURN_TO_LAST (EFI_SUBCLASS_SPECIFIC | 0x00000002)\r |
574 | #define EFI_SW_DXE_CORE_PC_START_DRIVER (EFI_SUBCLASS_SPECIFIC | 0x00000003)\r |
575 | \r |
576 | //\r |
577 | // Software Class DXE BS Driver Subclass Progress Code definitions.\r |
578 | //\r |
579 | #define EFI_SW_DXE_BS_PC_LEGACY_OPROM_INIT (EFI_SUBCLASS_SPECIFIC | 0x00000000)\r |
580 | #define EFI_SW_DXE_BS_PC_READY_TO_BOOT_EVENT (EFI_SUBCLASS_SPECIFIC | 0x00000001)\r |
581 | #define EFI_SW_DXE_BS_PC_LEGACY_BOOT_EVENT (EFI_SUBCLASS_SPECIFIC | 0x00000002)\r |
582 | #define EFI_SW_DXE_BS_PC_EXIT_BOOT_SERVICES_EVENT (EFI_SUBCLASS_SPECIFIC | 0x00000003)\r |
583 | #define EFI_SW_DXE_BS_PC_VIRTUAL_ADDRESS_CHANGE_EVENT (EFI_SUBCLASS_SPECIFIC | 0x00000004)\r |
584 | #define EFI_SW_DXE_BS_PC_BEGIN_CONNECTING_DRIVERS (EFI_SUBCLASS_SPECIFIC | 0x00000005)\r |
585 | #define EFI_SW_DXE_BS_PC_VERIFYING_PASSWORD (EFI_SUBCLASS_SPECIFIC | 0x00000006)\r |
586 | \r |
587 | //\r |
588 | // Software Class DXE RT Driver Subclass Progress Code definitions.\r |
589 | //\r |
590 | #define EFI_SW_DXE_RT_PC_S0 (EFI_SUBCLASS_SPECIFIC | 0x00000000)\r |
591 | #define EFI_SW_DXE_RT_PC_S1 (EFI_SUBCLASS_SPECIFIC | 0x00000001)\r |
592 | #define EFI_SW_DXE_RT_PC_S2 (EFI_SUBCLASS_SPECIFIC | 0x00000002)\r |
593 | #define EFI_SW_DXE_RT_PC_S3 (EFI_SUBCLASS_SPECIFIC | 0x00000003)\r |
594 | #define EFI_SW_DXE_RT_PC_S4 (EFI_SUBCLASS_SPECIFIC | 0x00000004)\r |
595 | #define EFI_SW_DXE_RT_PC_S5 (EFI_SUBCLASS_SPECIFIC | 0x00000005)\r |
596 | \r |
597 | //\r |
598 | // Software Class SMM Driver Subclass Progress Code definitions.\r |
599 | //\r |
600 | //\r |
601 | // Software Class EFI Application Subclass Progress Code definitions.\r |
602 | //\r |
603 | //\r |
604 | // Software Class EFI OS Loader Subclass Progress Code definitions.\r |
605 | //\r |
606 | //\r |
607 | // Software Class EFI RT Subclass Progress Code definitions.\r |
608 | //\r |
609 | #define EFI_SW_RT_PC_ENTRY_POINT (EFI_SUBCLASS_SPECIFIC | 0x00000000)\r |
610 | #define EFI_SW_RT_PC_HANDOFF_TO_NEXT (EFI_SUBCLASS_SPECIFIC | 0x00000001)\r |
611 | #define EFI_SW_RT_PC_RETURN_TO_LAST (EFI_SUBCLASS_SPECIFIC | 0x00000002)\r |
612 | \r |
613 | //\r |
614 | // Software Class EFI AL Subclass Progress Code definitions.\r |
615 | //\r |
616 | #define EFI_SW_AL_PC_ENTRY_POINT (EFI_SUBCLASS_SPECIFIC | 0x00000000)\r |
617 | #define EFI_SW_AL_PC_RETURN_TO_LAST (EFI_SUBCLASS_SPECIFIC | 0x00000001)\r |
618 | \r |
619 | //\r |
620 | // Software Class EBC Exception Subclass Progress Code definitions.\r |
621 | //\r |
622 | //\r |
623 | // Software Class IA32 Exception Subclass Progress Code definitions.\r |
624 | //\r |
625 | //\r |
626 | // Software Class X64 Exception Subclass Progress Code definitions.\r |
627 | //\r |
628 | //\r |
629 | // Software Class IPF Exception Subclass Progress Code definitions.\r |
630 | //\r |
631 | //\r |
632 | // Software Class PEI Services Subclass Progress Code definitions.\r |
633 | //\r |
634 | #define EFI_SW_PS_PC_INSTALL_PPI (EFI_SUBCLASS_SPECIFIC | 0x00000000)\r |
635 | #define EFI_SW_PS_PC_REINSTALL_PPI (EFI_SUBCLASS_SPECIFIC | 0x00000001)\r |
636 | #define EFI_SW_PS_PC_LOCATE_PPI (EFI_SUBCLASS_SPECIFIC | 0x00000002)\r |
637 | #define EFI_SW_PS_PC_NOTIFY_PPI (EFI_SUBCLASS_SPECIFIC | 0x00000003)\r |
638 | #define EFI_SW_PS_PC_GET_BOOT_MODE (EFI_SUBCLASS_SPECIFIC | 0x00000004)\r |
639 | #define EFI_SW_PS_PC_SET_BOOT_MODE (EFI_SUBCLASS_SPECIFIC | 0x00000005)\r |
640 | #define EFI_SW_PS_PC_GET_HOB_LIST (EFI_SUBCLASS_SPECIFIC | 0x00000006)\r |
641 | #define EFI_SW_PS_PC_CREATE_HOB (EFI_SUBCLASS_SPECIFIC | 0x00000007)\r |
642 | #define EFI_SW_PS_PC_FFS_FIND_NEXT_VOLUME (EFI_SUBCLASS_SPECIFIC | 0x00000008)\r |
643 | #define EFI_SW_PS_PC_FFS_FIND_NEXT_FILE (EFI_SUBCLASS_SPECIFIC | 0x00000009)\r |
644 | #define EFI_SW_PS_PC_FFS_FIND_SECTION_DATA (EFI_SUBCLASS_SPECIFIC | 0x0000000A)\r |
645 | #define EFI_SW_PS_PC_INSTALL_PEI_MEMORY (EFI_SUBCLASS_SPECIFIC | 0x0000000B)\r |
646 | #define EFI_SW_PS_PC_ALLOCATE_PAGES (EFI_SUBCLASS_SPECIFIC | 0x0000000C)\r |
647 | #define EFI_SW_PS_PC_ALLOCATE_POOL (EFI_SUBCLASS_SPECIFIC | 0x0000000D)\r |
648 | #define EFI_SW_PS_PC_COPY_MEM (EFI_SUBCLASS_SPECIFIC | 0x0000000E)\r |
649 | #define EFI_SW_PS_PC_SET_MEM (EFI_SUBCLASS_SPECIFIC | 0x0000000F)\r |
650 | \r |
651 | //\r |
652 | // Software Class EFI Boot Services Subclass Progress Code definitions.\r |
653 | //\r |
654 | #define EFI_SW_BS_PC_RAISE_TPL (EFI_SUBCLASS_SPECIFIC | 0x00000000)\r |
655 | #define EFI_SW_BS_PC_RESTORE_TPL (EFI_SUBCLASS_SPECIFIC | 0x00000001)\r |
656 | #define EFI_SW_BS_PC_ALLOCATE_PAGES (EFI_SUBCLASS_SPECIFIC | 0x00000002)\r |
657 | #define EFI_SW_BS_PC_FREE_PAGES (EFI_SUBCLASS_SPECIFIC | 0x00000003)\r |
658 | #define EFI_SW_BS_PC_GET_MEMORY_MAP (EFI_SUBCLASS_SPECIFIC | 0x00000004)\r |
659 | #define EFI_SW_BS_PC_ALLOCATE_POOL (EFI_SUBCLASS_SPECIFIC | 0x00000005)\r |
660 | #define EFI_SW_BS_PC_FREE_POOL (EFI_SUBCLASS_SPECIFIC | 0x00000006)\r |
661 | #define EFI_SW_BS_PC_CREATE_EVENT (EFI_SUBCLASS_SPECIFIC | 0x00000007)\r |
662 | #define EFI_SW_BS_PC_SET_TIMER (EFI_SUBCLASS_SPECIFIC | 0x00000008)\r |
663 | #define EFI_SW_BS_PC_WAIT_FOR_EVENT (EFI_SUBCLASS_SPECIFIC | 0x00000009)\r |
664 | #define EFI_SW_BS_PC_SIGNAL_EVENT (EFI_SUBCLASS_SPECIFIC | 0x0000000A)\r |
665 | #define EFI_SW_BS_PC_CLOSE_EVENT (EFI_SUBCLASS_SPECIFIC | 0x0000000B)\r |
666 | #define EFI_SW_BS_PC_CHECK_EVENT (EFI_SUBCLASS_SPECIFIC | 0x0000000C)\r |
667 | #define EFI_SW_BS_PC_INSTALL_PROTOCOL_INTERFACE (EFI_SUBCLASS_SPECIFIC | 0x0000000D)\r |
668 | #define EFI_SW_BS_PC_REINSTALL_PROTOCOL_INTERFACE (EFI_SUBCLASS_SPECIFIC | 0x0000000E)\r |
669 | #define EFI_SW_BS_PC_UNINSTALL_PROTOCOL_INTERFACE (EFI_SUBCLASS_SPECIFIC | 0x0000000F)\r |
670 | #define EFI_SW_BS_PC_HANDLE_PROTOCOL (EFI_SUBCLASS_SPECIFIC | 0x00000010)\r |
671 | #define EFI_SW_BS_PC_PC_HANDLE_PROTOCOL (EFI_SUBCLASS_SPECIFIC | 0x00000011)\r |
672 | #define EFI_SW_BS_PC_REGISTER_PROTOCOL_NOTIFY (EFI_SUBCLASS_SPECIFIC | 0x00000012)\r |
673 | #define EFI_SW_BS_PC_LOCATE_HANDLE (EFI_SUBCLASS_SPECIFIC | 0x00000013)\r |
674 | #define EFI_SW_BS_PC_INSTALL_CONFIGURATION_TABLE (EFI_SUBCLASS_SPECIFIC | 0x00000014)\r |
675 | #define EFI_SW_BS_PC_LOAD_IMAGE (EFI_SUBCLASS_SPECIFIC | 0x00000015)\r |
676 | #define EFI_SW_BS_PC_START_IMAGE (EFI_SUBCLASS_SPECIFIC | 0x00000016)\r |
677 | #define EFI_SW_BS_PC_EXIT (EFI_SUBCLASS_SPECIFIC | 0x00000017)\r |
678 | #define EFI_SW_BS_PC_UNLOAD_IMAGE (EFI_SUBCLASS_SPECIFIC | 0x00000018)\r |
679 | #define EFI_SW_BS_PC_EXIT_BOOT_SERVICES (EFI_SUBCLASS_SPECIFIC | 0x00000019)\r |
680 | #define EFI_SW_BS_PC_GET_NEXT_MONOTONIC_COUNT (EFI_SUBCLASS_SPECIFIC | 0x0000001A)\r |
681 | #define EFI_SW_BS_PC_STALL (EFI_SUBCLASS_SPECIFIC | 0x0000001B)\r |
682 | #define EFI_SW_BS_PC_SET_WATCHDOG_TIMER (EFI_SUBCLASS_SPECIFIC | 0x0000001C)\r |
683 | #define EFI_SW_BS_PC_CONNECT_CONTROLLER (EFI_SUBCLASS_SPECIFIC | 0x0000001D)\r |
684 | #define EFI_SW_BS_PC_DISCONNECT_CONTROLLER (EFI_SUBCLASS_SPECIFIC | 0x0000001E)\r |
685 | #define EFI_SW_BS_PC_OPEN_PROTOCOL (EFI_SUBCLASS_SPECIFIC | 0x0000001F)\r |
686 | #define EFI_SW_BS_PC_CLOSE_PROTOCOL (EFI_SUBCLASS_SPECIFIC | 0x00000020)\r |
687 | #define EFI_SW_BS_PC_OPEN_PROTOCOL_INFORMATION (EFI_SUBCLASS_SPECIFIC | 0x00000021)\r |
688 | #define EFI_SW_BS_PC_PROTOCOLS_PER_HANDLE (EFI_SUBCLASS_SPECIFIC | 0x00000022)\r |
689 | #define EFI_SW_BS_PC_LOCATE_HANDLE_BUFFER (EFI_SUBCLASS_SPECIFIC | 0x00000023)\r |
690 | #define EFI_SW_BS_PC_LOCATE_PROTOCOL (EFI_SUBCLASS_SPECIFIC | 0x00000024)\r |
691 | #define EFI_SW_BS_PC_INSTALL_MULTIPLE_INTERFACES (EFI_SUBCLASS_SPECIFIC | 0x00000025)\r |
692 | #define EFI_SW_BS_PC_UNINSTALL_MULTIPLE_INTERFACES (EFI_SUBCLASS_SPECIFIC | 0x00000026)\r |
693 | #define EFI_SW_BS_PC_CALCULATE_CRC_32 (EFI_SUBCLASS_SPECIFIC | 0x00000027)\r |
694 | #define EFI_SW_BS_PC_COPY_MEM (EFI_SUBCLASS_SPECIFIC | 0x00000028)\r |
695 | #define EFI_SW_BS_PC_SET_MEM (EFI_SUBCLASS_SPECIFIC | 0x00000029)\r |
696 | \r |
697 | //\r |
698 | // Software Class EFI Runtime Services Subclass Progress Code definitions.\r |
699 | //\r |
700 | #define EFI_SW_RS_PC_GET_TIME (EFI_SUBCLASS_SPECIFIC | 0x00000000)\r |
701 | #define EFI_SW_RS_PC_SET_TIME (EFI_SUBCLASS_SPECIFIC | 0x00000001)\r |
702 | #define EFI_SW_RS_PC_GET_WAKEUP_TIME (EFI_SUBCLASS_SPECIFIC | 0x00000002)\r |
703 | #define EFI_SW_RS_PC_SET_WAKEUP_TIME (EFI_SUBCLASS_SPECIFIC | 0x00000003)\r |
704 | #define EFI_SW_RS_PC_SET_VIRTUAL_ADDRESS_MAP (EFI_SUBCLASS_SPECIFIC | 0x00000004)\r |
705 | #define EFI_SW_RS_PC_CONVERT_POINTER (EFI_SUBCLASS_SPECIFIC | 0x00000005)\r |
706 | #define EFI_SW_RS_PC_GET_VARIABLE (EFI_SUBCLASS_SPECIFIC | 0x00000006)\r |
707 | #define EFI_SW_RS_PC_GET_NEXT_VARIABLE_NAME (EFI_SUBCLASS_SPECIFIC | 0x00000007)\r |
708 | #define EFI_SW_RS_PC_SET_VARIABLE (EFI_SUBCLASS_SPECIFIC | 0x00000008)\r |
709 | #define EFI_SW_RS_PC_GET_NEXT_HIGH_MONOTONIC_COUNT (EFI_SUBCLASS_SPECIFIC | 0x00000009)\r |
710 | #define EFI_SW_RS_PC_RESET_SYSTEM (EFI_SUBCLASS_SPECIFIC | 0x0000000A)\r |
711 | \r |
712 | //\r |
713 | // Software Class EFI DXE Services Subclass Progress Code definitions\r |
714 | //\r |
715 | #define EFI_SW_DS_PC_ADD_MEMORY_SPACE (EFI_SUBCLASS_SPECIFIC | 0x00000000)\r |
716 | #define EFI_SW_DS_PC_ALLOCATE_MEMORY_SPACE (EFI_SUBCLASS_SPECIFIC | 0x00000001)\r |
717 | #define EFI_SW_DS_PC_FREE_MEMORY_SPACE (EFI_SUBCLASS_SPECIFIC | 0x00000002)\r |
718 | #define EFI_SW_DS_PC_REMOVE_MEMORY_SPACE (EFI_SUBCLASS_SPECIFIC | 0x00000003)\r |
719 | #define EFI_SW_DS_PC_GET_MEMORY_SPACE_DESCRIPTOR (EFI_SUBCLASS_SPECIFIC | 0x00000004)\r |
720 | #define EFI_SW_DS_PC_SET_MEMORY_SPACE_ATTRIBUTES (EFI_SUBCLASS_SPECIFIC | 0x00000005)\r |
721 | #define EFI_SW_DS_PC_GET_MEMORY_SPACE_MAP (EFI_SUBCLASS_SPECIFIC | 0x00000006)\r |
722 | #define EFI_SW_DS_PC_ADD_IO_SPACE (EFI_SUBCLASS_SPECIFIC | 0x00000007)\r |
723 | #define EFI_SW_DS_PC_ALLOCATE_IO_SPACE (EFI_SUBCLASS_SPECIFIC | 0x00000008)\r |
724 | #define EFI_SW_DS_PC_FREE_IO_SPACE (EFI_SUBCLASS_SPECIFIC | 0x00000009)\r |
725 | #define EFI_SW_DS_PC_REMOVE_IO_SPACE (EFI_SUBCLASS_SPECIFIC | 0x0000000A)\r |
726 | #define EFI_SW_DS_PC_GET_IO_SPACE_DESCRIPTOR (EFI_SUBCLASS_SPECIFIC | 0x0000000B)\r |
727 | #define EFI_SW_DS_PC_GET_IO_SPACE_MAP (EFI_SUBCLASS_SPECIFIC | 0x0000000C)\r |
728 | #define EFI_SW_DS_PC_DISPATCH (EFI_SUBCLASS_SPECIFIC | 0x0000000D)\r |
729 | #define EFI_SW_DS_PC_SCHEDULE (EFI_SUBCLASS_SPECIFIC | 0x0000000E)\r |
730 | #define EFI_SW_DS_PC_TRUST (EFI_SUBCLASS_SPECIFIC | 0x0000000F)\r |
731 | #define EFI_SW_DS_PC_PROCESS_FIRMWARE_VOLUME (EFI_SUBCLASS_SPECIFIC | 0x00000010)\r |
732 | \r |
733 | //\r |
734 | // Software Class Error Code definitions.\r |
735 | // These are shared by all subclasses.\r |
736 | //\r |
737 | #define EFI_SW_EC_NON_SPECIFIC 0x00000000\r |
738 | #define EFI_SW_EC_LOAD_ERROR 0x00000001\r |
739 | #define EFI_SW_EC_INVALID_PARAMETER 0x00000002\r |
740 | #define EFI_SW_EC_UNSUPPORTED 0x00000003\r |
741 | #define EFI_SW_EC_INVALID_BUFFER 0x00000004\r |
742 | #define EFI_SW_EC_OUT_OF_RESOURCES 0x00000005\r |
743 | #define EFI_SW_EC_ABORTED 0x00000006\r |
744 | #define EFI_SW_EC_ILLEGAL_SOFTWARE_STATE 0x00000007\r |
745 | #define EFI_SW_EC_ILLEGAL_HARDWARE_STATE 0x00000008\r |
746 | #define EFI_SW_EC_START_ERROR 0x00000009\r |
747 | #define EFI_SW_EC_BAD_DATE_TIME 0x0000000A\r |
748 | #define EFI_SW_EC_CFG_INVALID 0x0000000B\r |
749 | #define EFI_SW_EC_CFG_CLR_REQUEST 0x0000000C\r |
750 | #define EFI_SW_EC_CFG_DEFAULT 0x0000000D\r |
751 | #define EFI_SW_EC_PWD_INVALID 0x0000000E\r |
752 | #define EFI_SW_EC_PWD_CLR_REQUEST 0x0000000F\r |
753 | #define EFI_SW_EC_PWD_CLEARED 0x00000010\r |
754 | #define EFI_SW_EC_EVENT_LOG_FULL 0x00000011\r |
755 | \r |
756 | //\r |
757 | // Software Class Unspecified Subclass Error Code definitions.\r |
758 | //\r |
759 | //\r |
760 | // Software Class SEC Subclass Error Code definitions.\r |
761 | //\r |
762 | //\r |
763 | // Software Class PEI Core Subclass Error Code definitions.\r |
764 | //\r |
765 | #define EFI_SW_PEI_CORE_EC_DXE_CORRUPT (EFI_SUBCLASS_SPECIFIC | 0x00000000)\r |
766 | \r |
767 | //\r |
768 | // Software Class PEI Module Subclass Error Code definitions.\r |
769 | //\r |
770 | #define EFI_SW_PEIM_EC_NO_RECOVERY_CAPSULE (EFI_SUBCLASS_SPECIFIC | 0x00000000)\r |
771 | #define EFI_SW_PEIM_EC_INVALID_CAPSULE_DESCRIPTOR (EFI_SUBCLASS_SPECIFIC | 0x00000001)\r |
772 | \r |
773 | //\r |
774 | // Software Class DXE Core Subclass Error Code definitions.\r |
775 | //\r |
776 | #define EFI_SW_CSM_LEGACY_ROM_INIT (EFI_SUBCLASS_SPECIFIC | 0x00000000)\r |
777 | //\r |
778 | // Software Class DXE Boot Service Driver Subclass Error Code definitions.\r |
779 | //\r |
780 | #define EFI_SW_DXE_BS_EC_LEGACY_OPROM_NO_SPACE (EFI_SUBCLASS_SPECIFIC | 0x00000000)\r |
781 | \r |
782 | //\r |
783 | // Software Class DXE Runtime Service Driver Subclass Error Code definitions.\r |
784 | //\r |
785 | //\r |
786 | // Software Class SMM Driver Subclass Error Code definitions.\r |
787 | //\r |
788 | //\r |
789 | // Software Class EFI Application Subclass Error Code definitions.\r |
790 | //\r |
791 | //\r |
792 | // Software Class EFI OS Loader Subclass Error Code definitions.\r |
793 | //\r |
794 | //\r |
795 | // Software Class EFI RT Subclass Error Code definitions.\r |
796 | //\r |
797 | //\r |
798 | // Software Class EFI AL Subclass Error Code definitions.\r |
799 | //\r |
800 | //\r |
801 | // Software Class EBC Exception Subclass Error Code definitions.\r |
802 | // These exceptions are derived from the debug protocol definitions in the EFI\r |
803 | // specification.\r |
804 | //\r |
805 | #define EFI_SW_EC_EBC_UNDEFINED (EFI_SUBCLASS_SPECIFIC | EXCEPT_EBC_UNDEFINED)\r |
806 | #define EFI_SW_EC_EBC_DIVIDE_ERROR (EFI_SUBCLASS_SPECIFIC | EXCEPT_EBC_DIVIDE_ERROR)\r |
807 | #define EFI_SW_EC_EBC_DEBUG (EFI_SUBCLASS_SPECIFIC | EXCEPT_EBC_DEBUG)\r |
808 | #define EFI_SW_EC_EBC_BREAKPOINT (EFI_SUBCLASS_SPECIFIC | EXCEPT_EBC_BREAKPOINT)\r |
809 | #define EFI_SW_EC_EBC_OVERFLOW (EFI_SUBCLASS_SPECIFIC | EXCEPT_EBC_OVERFLOW)\r |
810 | #define EFI_SW_EC_EBC_INVALID_OPCODE (EFI_SUBCLASS_SPECIFIC | EXCEPT_EBC_INVALID_OPCODE)\r |
811 | #define EFI_SW_EC_EBC_STACK_FAULT (EFI_SUBCLASS_SPECIFIC | EXCEPT_EBC_STACK_FAULT)\r |
812 | #define EFI_SW_EC_EBC_ALIGNMENT_CHECK (EFI_SUBCLASS_SPECIFIC | EXCEPT_EBC_ALIGNMENT_CHECK)\r |
813 | #define EFI_SW_EC_EBC_INSTRUCTION_ENCODING (EFI_SUBCLASS_SPECIFIC | EXCEPT_EBC_INSTRUCTION_ENCODING)\r |
814 | #define EFI_SW_EC_EBC_BAD_BREAK (EFI_SUBCLASS_SPECIFIC | EXCEPT_EBC_BAD_BREAK)\r |
815 | #define EFI_SW_EC_EBC_STEP (EFI_SUBCLASS_SPECIFIC | EXCEPT_EBC_STEP)\r |
816 | \r |
817 | //\r |
818 | // Software Class IA32 Exception Subclass Error Code definitions.\r |
819 | // These exceptions are derived from the debug protocol definitions in the EFI\r |
820 | // specification.\r |
821 | //\r |
822 | #define EFI_SW_EC_IA32_DIVIDE_ERROR (EFI_SUBCLASS_SPECIFIC | EXCEPT_IA32_DIVIDE_ERROR)\r |
823 | #define EFI_SW_EC_IA32_DEBUG (EFI_SUBCLASS_SPECIFIC | EXCEPT_IA32_DEBUG)\r |
824 | #define EFI_SW_EC_IA32_NMI (EFI_SUBCLASS_SPECIFIC | EXCEPT_IA32_NMI)\r |
825 | #define EFI_SW_EC_IA32_BREAKPOINT (EFI_SUBCLASS_SPECIFIC | EXCEPT_IA32_BREAKPOINT)\r |
826 | #define EFI_SW_EC_IA32_OVERFLOW (EFI_SUBCLASS_SPECIFIC | EXCEPT_IA32_OVERFLOW)\r |
827 | #define EFI_SW_EC_IA32_BOUND (EFI_SUBCLASS_SPECIFIC | EXCEPT_IA32_BOUND)\r |
828 | #define EFI_SW_EC_IA32_INVALID_OPCODE (EFI_SUBCLASS_SPECIFIC | EXCEPT_IA32_INVALID_OPCODE)\r |
829 | #define EFI_SW_EC_IA32_DOUBLE_FAULT (EFI_SUBCLASS_SPECIFIC | EXCEPT_IA32_DOUBLE_FAULT)\r |
830 | #define EFI_SW_EC_IA32_INVALID_TSS (EFI_SUBCLASS_SPECIFIC | EXCEPT_IA32_INVALID_TSS)\r |
831 | #define EFI_SW_EC_IA32_SEG_NOT_PRESENT (EFI_SUBCLASS_SPECIFIC | EXCEPT_IA32_SEG_NOT_PRESENT)\r |
832 | #define EFI_SW_EC_IA32_STACK_FAULT (EFI_SUBCLASS_SPECIFIC | EXCEPT_IA32_STACK_FAULT)\r |
833 | #define EFI_SW_EC_IA32_GP_FAULT (EFI_SUBCLASS_SPECIFIC | EXCEPT_IA32_GP_FAULT)\r |
834 | #define EFI_SW_EC_IA32_PAGE_FAULT (EFI_SUBCLASS_SPECIFIC | EXCEPT_IA32_PAGE_FAULT)\r |
835 | #define EFI_SW_EC_IA32_FP_ERROR (EFI_SUBCLASS_SPECIFIC | EXCEPT_IA32_FP_ERROR)\r |
836 | #define EFI_SW_EC_IA32_ALIGNMENT_CHECK (EFI_SUBCLASS_SPECIFIC | EXCEPT_IA32_ALIGNMENT_CHECK)\r |
837 | #define EFI_SW_EC_IA32_MACHINE_CHECK (EFI_SUBCLASS_SPECIFIC | EXCEPT_IA32_MACHINE_CHECK)\r |
838 | #define EFI_SW_EC_IA32_SIMD (EFI_SUBCLASS_SPECIFIC | EXCEPT_IA32_SIMD)\r |
839 | \r |
840 | //\r |
841 | // Software Class X64 Exception Subclass Error Code definitions.\r |
842 | // These exceptions are derived from the debug protocol definitions in the EFI\r |
843 | // specification.\r |
844 | //\r |
845 | #define EFI_SW_EC_X64_DIVIDE_ERROR (EFI_SUBCLASS_SPECIFIC | EXCEPT_X64_DIVIDE_ERROR)\r |
846 | #define EFI_SW_EC_X64_DEBUG (EFI_SUBCLASS_SPECIFIC | EXCEPT_X64_DEBUG)\r |
847 | #define EFI_SW_EC_X64_NMI (EFI_SUBCLASS_SPECIFIC | EXCEPT_X64_NMI)\r |
848 | #define EFI_SW_EC_X64_BREAKPOINT (EFI_SUBCLASS_SPECIFIC | EXCEPT_X64_BREAKPOINT)\r |
849 | #define EFI_SW_EC_X64_OVERFLOW (EFI_SUBCLASS_SPECIFIC | EXCEPT_X64_OVERFLOW)\r |
850 | #define EFI_SW_EC_X64_BOUND (EFI_SUBCLASS_SPECIFIC | EXCEPT_X64_BOUND)\r |
851 | #define EFI_SW_EC_X64_INVALID_OPCODE (EFI_SUBCLASS_SPECIFIC | EXCEPT_X64_INVALID_OPCODE)\r |
852 | #define EFI_SW_EC_X64_DOUBLE_FAULT (EFI_SUBCLASS_SPECIFIC | EXCEPT_X64_DOUBLE_FAULT)\r |
853 | #define EFI_SW_EC_X64_INVALID_TSS (EFI_SUBCLASS_SPECIFIC | EXCEPT_X64_INVALID_TSS)\r |
854 | #define EFI_SW_EC_X64_SEG_NOT_PRESENT (EFI_SUBCLASS_SPECIFIC | EXCEPT_X64_SEG_NOT_PRESENT)\r |
855 | #define EFI_SW_EC_X64_STACK_FAULT (EFI_SUBCLASS_SPECIFIC | EXCEPT_X64_STACK_FAULT)\r |
856 | #define EFI_SW_EC_X64_GP_FAULT (EFI_SUBCLASS_SPECIFIC | EXCEPT_X64_GP_FAULT)\r |
857 | #define EFI_SW_EC_X64_PAGE_FAULT (EFI_SUBCLASS_SPECIFIC | EXCEPT_X64_PAGE_FAULT)\r |
858 | #define EFI_SW_EC_X64_FP_ERROR (EFI_SUBCLASS_SPECIFIC | EXCEPT_X64_FP_ERROR)\r |
859 | #define EFI_SW_EC_X64_ALIGNMENT_CHECK (EFI_SUBCLASS_SPECIFIC | EXCEPT_X64_ALIGNMENT_CHECK)\r |
860 | #define EFI_SW_EC_X64_MACHINE_CHECK (EFI_SUBCLASS_SPECIFIC | EXCEPT_X64_MACHINE_CHECK)\r |
861 | #define EFI_SW_EC_X64_SIMD (EFI_SUBCLASS_SPECIFIC | EXCEPT_X64_SIMD)\r |
862 | \r |
863 | //\r |
864 | // Software Class IPF Exception Subclass Error Code definitions.\r |
865 | // These exceptions are derived from the debug protocol definitions in the EFI\r |
866 | // specification.\r |
867 | //\r |
868 | #define EFI_SW_EC_IPF_ALT_DTLB (EFI_SUBCLASS_SPECIFIC | EXCEPT_IPF_ALT_DTLB)\r |
869 | #define EFI_SW_EC_IPF_DNESTED_TLB (EFI_SUBCLASS_SPECIFIC | EXCEPT_IPF_DNESTED_TLB)\r |
870 | #define EFI_SW_EC_IPF_BREAKPOINT (EFI_SUBCLASS_SPECIFIC | EXCEPT_IPF_BREAKPOINT)\r |
871 | #define EFI_SW_EC_IPF_EXTERNAL_INTERRUPT (EFI_SUBCLASS_SPECIFIC | EXCEPT_IPF_EXTERNAL_INTERRUPT)\r |
872 | #define EFI_SW_EC_IPF_GEN_EXCEPT (EFI_SUBCLASS_SPECIFIC | EXCEPT_IPF_GEN_EXCEPT)\r |
873 | #define EFI_SW_EC_IPF_NAT_CONSUMPTION (EFI_SUBCLASS_SPECIFIC | EXCEPT_IPF_NAT_CONSUMPTION)\r |
874 | #define EFI_SW_EC_IPF_DEBUG_EXCEPT (EFI_SUBCLASS_SPECIFIC | EXCEPT_IPF_DEBUG_EXCEPT)\r |
875 | #define EFI_SW_EC_IPF_UNALIGNED_ACCESS (EFI_SUBCLASS_SPECIFIC | EXCEPT_IPF_UNALIGNED_ACCESS)\r |
876 | #define EFI_SW_EC_IPF_FP_FAULT (EFI_SUBCLASS_SPECIFIC | EXCEPT_IPF_FP_FAULT)\r |
877 | #define EFI_SW_EC_IPF_FP_TRAP (EFI_SUBCLASS_SPECIFIC | EXCEPT_IPF_FP_TRAP)\r |
878 | #define EFI_SW_EC_IPF_TAKEN_BRANCH (EFI_SUBCLASS_SPECIFIC | EXCEPT_IPF_TAKEN_BRANCH)\r |
879 | #define EFI_SW_EC_IPF_SINGLE_STEP (EFI_SUBCLASS_SPECIFIC | EXCEPT_IPF_SINGLE_STEP)\r |
880 | \r |
881 | \r |
882 | //\r |
883 | // Software Class PEI Service Subclass Error Code definitions.\r |
884 | //\r |
885 | //\r |
886 | // Software Class EFI Boot Service Subclass Error Code definitions.\r |
887 | //\r |
888 | //\r |
889 | // Software Class EFI Runtime Service Subclass Error Code definitions.\r |
890 | //\r |
891 | //\r |
892 | // Software Class EFI DXE Service Subclass Error Code definitions.\r |
893 | //\r |
894 | \r |
895 | ///////////////////////////////////////////////////////////////////////////////\r |
896 | // Section 7\r |
897 | ///////////////////////////////////////////////////////////////////////////////\r |
898 | //\r |
899 | // Debug Code definitions for all classes and subclass\r |
900 | // Only one debug code is defined at this point and should\r |
901 | // be used for anything that gets sent to debug stream.\r |
902 | //\r |
903 | #define EFI_DC_UNSPECIFIED 0x0\r |
904 | \r |
905 | #endif\r |