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