]> git.proxmox.com Git - mirror_edk2.git/blame - IntelFrameworkPkg/Include/Framework/StatusCode.h
IntelFrameworkPkg: Clean up source files
[mirror_edk2.git] / IntelFrameworkPkg / Include / Framework / StatusCode.h
CommitLineData
79964ac8 1/** @file\r
2 Status Code Definitions, according to Intel Platform Innovation Framework\r
3 for EFI Status Codes Specification\r
4\r
1c2f052d
LG
5Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved.<BR>\r
6This program and the accompanying materials are licensed and made available under\r
7the terms and conditions of the BSD License that accompanies this distribution.\r
f22f941e 8The full text of the license may be found at\r
1c2f052d
LG
9http://opensource.org/licenses/bsd-license.php.\r
10\r
11THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
f22f941e 12WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
79964ac8 13\r
79964ac8 14 @par Revision Reference:\r
0f899407 15 Intel Platform Innovation Framework for EFI Status Codes Specification\r
79964ac8 16 Version 0.92.\r
17\r
18**/\r
19\r
7f586454 20#ifndef _FRAMEWORK_STATUS_CODE_H_\r
21#define _FRAMEWORK_STATUS_CODE_H_\r
79964ac8 22\r
23//\r
7f586454 24// Required for X64 defines for CPU exception types\r
79964ac8 25//\r
7f586454 26#include <Protocol/DebugSupport.h>\r
79964ac8 27\r
bc34515d 28///\r
29/// Software Class DXE BS Driver Subclass Progress Code definitions.\r
c031fd23 30///\r
1c2f052d
LG
31/// Inconsistent with specification here:\r
32/// The Framework Specification, StatusCodes 0.92, does not define the macros.\r
7f586454 33///\r
bc34515d 34///@{\r
79964ac8 35#define EFI_SW_DXE_BS_PC_BEGIN_CONNECTING_DRIVERS (EFI_SUBCLASS_SPECIFIC | 0x00000005)\r
36#define EFI_SW_DXE_BS_PC_VERIFYING_PASSWORD (EFI_SUBCLASS_SPECIFIC | 0x00000006)\r
bc34515d 37///@}\r
79964ac8 38\r
c031fd23 39///\r
bc34515d 40/// Software Class DXE RT Driver Subclass Progress Code definitions.\r
c031fd23 41///\r
1c2f052d
LG
42/// Inconsistent with specification here:\r
43/// The Framework Specification, StatusCodes 0.92, does not define the macros.\r
7f586454 44///\r
bc34515d 45///@{\r
79964ac8 46#define EFI_SW_DXE_RT_PC_S0 (EFI_SUBCLASS_SPECIFIC | 0x00000000)\r
47#define EFI_SW_DXE_RT_PC_S1 (EFI_SUBCLASS_SPECIFIC | 0x00000001)\r
48#define EFI_SW_DXE_RT_PC_S2 (EFI_SUBCLASS_SPECIFIC | 0x00000002)\r
49#define EFI_SW_DXE_RT_PC_S3 (EFI_SUBCLASS_SPECIFIC | 0x00000003)\r
50#define EFI_SW_DXE_RT_PC_S4 (EFI_SUBCLASS_SPECIFIC | 0x00000004)\r
51#define EFI_SW_DXE_RT_PC_S5 (EFI_SUBCLASS_SPECIFIC | 0x00000005)\r
bc34515d 52///@}\r
79964ac8 53\r
bc34515d 54///\r
7f586454 55/// Software Subclass definitions.\r
bc34515d 56///\r
1c2f052d
LG
57/// Inconsistent with specification here:\r
58/// The Framework Specification, StatusCodes 0.92, does not define the macros.\r
bc34515d 59///\r
7f586454 60#define EFI_SOFTWARE_X64_EXCEPTION (EFI_SOFTWARE | 0x00130000)\r
79964ac8 61\r
c031fd23 62///\r
bc34515d 63/// Software Class X64 Exception Subclass Error Code definitions.\r
64/// These exceptions are derived from the debug protocol definitions in the EFI\r
65/// specification.\r
c031fd23 66///\r
1c2f052d
LG
67/// Inconsistent with specification here:\r
68/// The Framework Specification, StatusCodes 0.92, does not define the macros.\r
7f586454 69///\r
bc34515d 70///@{\r
51d104f8 71#define EFI_SW_EC_X64_DIVIDE_ERROR EXCEPT_X64_DIVIDE_ERROR\r
72#define EFI_SW_EC_X64_DEBUG EXCEPT_X64_DEBUG\r
73#define EFI_SW_EC_X64_NMI EXCEPT_X64_NMI\r
74#define EFI_SW_EC_X64_BREAKPOINT EXCEPT_X64_BREAKPOINT\r
75#define EFI_SW_EC_X64_OVERFLOW EXCEPT_X64_OVERFLOW\r
76#define EFI_SW_EC_X64_BOUND EXCEPT_X64_BOUND\r
77#define EFI_SW_EC_X64_INVALID_OPCODE EXCEPT_X64_INVALID_OPCODE\r
78#define EFI_SW_EC_X64_DOUBLE_FAULT EXCEPT_X64_DOUBLE_FAULT\r
79#define EFI_SW_EC_X64_INVALID_TSS EXCEPT_X64_INVALID_TSS\r
80#define EFI_SW_EC_X64_SEG_NOT_PRESENT EXCEPT_X64_SEG_NOT_PRESENT\r
81#define EFI_SW_EC_X64_STACK_FAULT EXCEPT_X64_STACK_FAULT\r
82#define EFI_SW_EC_X64_GP_FAULT EXCEPT_X64_GP_FAULT\r
83#define EFI_SW_EC_X64_PAGE_FAULT EXCEPT_X64_PAGE_FAULT\r
84#define EFI_SW_EC_X64_FP_ERROR EXCEPT_X64_FP_ERROR\r
85#define EFI_SW_EC_X64_ALIGNMENT_CHECK EXCEPT_X64_ALIGNMENT_CHECK\r
86#define EFI_SW_EC_X64_MACHINE_CHECK EXCEPT_X64_MACHINE_CHECK\r
87#define EFI_SW_EC_X64_SIMD EXCEPT_X64_SIMD\r
bc34515d 88///@}\r
79964ac8 89\r
bc34515d 90///\r
7f586454 91/// Software Class EFI After Life Subclass Progress Code definitions.\r
92///\r
bc34515d 93///@{\r
7f586454 94#define EFI_SW_AL_PC_ENTRY_POINT (EFI_SUBCLASS_SPECIFIC | 0x00000000)\r
95#define EFI_SW_AL_PC_RETURN_TO_LAST (EFI_SUBCLASS_SPECIFIC | 0x00000001)\r
bc34515d 96///@}\r
79964ac8 97\r
7f586454 98///\r
99/// Software Class DXE Core Subclass Error Code definitions.\r
100///\r
1c2f052d
LG
101/// Inconsistent with specification here:\r
102/// The Framework Specification, StatusCodes 0.92, does not define the macros.\r
7f586454 103///\r
1c2f052d 104#define EFI_SW_CSM_LEGACY_ROM_INIT (EFI_SUBCLASS_SPECIFIC | 0x00000000)\r
79964ac8 105\r
bc34515d 106///\r
7f586454 107/// IO Bus Class ATA/ATAPI Subclass Progress Code definitions.\r
108///\r
bc34515d 109///\r
1c2f052d
LG
110/// Inconsistent with specification here:\r
111/// The Framework Specification, StatusCodes 0.92, does not define the macros.\r
7f586454 112///\r
113///@{\r
114#define EFI_IOB_ATA_BUS_SMART_ENABLE (EFI_SUBCLASS_SPECIFIC | 0x00000000)\r
115#define EFI_IOB_ATA_BUS_SMART_DISABLE (EFI_SUBCLASS_SPECIFIC | 0x00000001)\r
116#define EFI_IOB_ATA_BUS_SMART_OVERTHRESHOLD (EFI_SUBCLASS_SPECIFIC | 0x00000002)\r
117#define EFI_IOB_ATA_BUS_SMART_UNDERTHRESHOLD (EFI_SUBCLASS_SPECIFIC | 0x00000003)\r
118///@}\r
119\r
120///\r
121/// IO Bus Class ATA/ATAPI Subclass Error Code definitions.\r
122///\r
123///\r
1c2f052d
LG
124/// Inconsistent with specification here:\r
125/// The Framework Specification, StatusCodes 0.92, does not define the macros.\r
7f586454 126///\r
127///@{\r
128#define EFI_IOB_ATA_BUS_SMART_NOTSUPPORTED (EFI_SUBCLASS_SPECIFIC | 0x00000000)\r
129#define EFI_IOB_ATA_BUS_SMART_DISABLED (EFI_SUBCLASS_SPECIFIC | 0x00000001)\r
130///@}\r
131\r
132///\r
133/// The reason that the processor was disabled.\r
134///\r
1c2f052d
LG
135/// Inconsistent with specification here:\r
136/// The Framework Specification, StatusCodes 0.92, does not define the macros.\r
7f586454 137///\r
138///@{\r
139#define EFI_CPU_CAUSE_NOT_DISABLED 0x0000\r
140///@}\r
79964ac8 141\r
55b902c3 142///\r
143/// Software Class PEI Module Subclass Progress Code definitions.\r
144///\r
145///@{\r
146#define EFI_SW_PEIM_PC_RECOVERY_BEGIN EFI_SW_PEI_PC_RECOVERY_BEGIN\r
147#define EFI_SW_PEIM_PC_CAPSULE_LOAD EFI_SW_PEI_PC_CAPSULE_LOAD\r
148#define EFI_SW_PEIM_PC_CAPSULE_START EFI_SW_PEI_PC_CAPSULE_START\r
149#define EFI_SW_PEIM_PC_RECOVERY_USER EFI_SW_PEI_PC_RECOVERY_USER\r
150#define EFI_SW_PEIM_PC_RECOVERY_AUTO EFI_SW_PEI_PC_RECOVERY_AUTO\r
151///@}\r
152\r
153///\r
154/// Software Class PEI Core Subclass Error Code definitions.\r
155///\r
156///@{\r
157#define EFI_SW_PEIM_CORE_EC_DXE_CORRUPT EFI_SW_PEI_CORE_EC_DXE_CORRUPT\r
158#define EFI_SW_PEIM_CORE_EC_DXEIPL_NOT_FOUND EFI_SW_PEI_CORE_EC_DXEIPL_NOT_FOUND\r
159///@}\r
160\r
79964ac8 161#endif\r