]> git.proxmox.com Git - mirror_edk2.git/commitdiff
Add new status code definition in PI 1.2 Errata B.
authorli-elvin <li-elvin@6f19259b-4bc3-4df7-8a09-765794883524>
Wed, 4 May 2011 03:19:25 +0000 (03:19 +0000)
committerli-elvin <li-elvin@6f19259b-4bc3-4df7-8a09-765794883524>
Wed, 4 May 2011 03:19:25 +0000 (03:19 +0000)
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11616 6f19259b-4bc3-4df7-8a09-765794883524

MdePkg/Include/Guid/StatusCodeDataTypeId.h
MdePkg/Include/Pi/PiStatusCode.h

index dbe7662faff414eb160da63bbbf983f7e87be348..7471db848af9b23bc1bdd361c719f7dd5b7cb827 100644 (file)
@@ -686,6 +686,18 @@ typedef union {
   /// EFI_DEBUG_SUPPORT_PROTOCOL in the UEFI Specification.\r
   ///\r
   EFI_SYSTEM_CONTEXT_IPF  SystemContextIpf;\r
+  ///\r
+  /// The context of the X64 processor when the exception was generated. Type\r
+  /// EFI_SYSTEM_CONTEXT_X64 is defined in the\r
+  /// EFI_DEBUG_SUPPORT_PROTOCOL in the UEFI Specification.\r
+  ///\r
+  EFI_SYSTEM_CONTEXT_X64  SystemContextX64; \r
+  ///\r
+  /// The context of the ARM processor when the exception was generated. Type\r
+  /// EFI_SYSTEM_CONTEXT_ARM is defined in the\r
+  /// EFI_DEBUG_SUPPORT_PROTOCOL in the UEFI Specification.\r
+  ///\r
+  EFI_SYSTEM_CONTEXT_ARM  SystemContextArm;\r
 } EFI_STATUS_CODE_EXCEP_SYSTEM_CONTEXT;\r
 \r
 ///\r
index 77c0d7f6881061a5bc30a1185ecd277c71a9da44..389d31c9a863eac7d4055cadb36db9a9fb738efb 100644 (file)
@@ -20,7 +20,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 #define __PI_STATUS_CODE_H__\r
 \r
 //\r
-// Required for IA32 and IPF defines for CPU exception types\r
+// Required for IA32, X64, IPF, ARM and EBC defines for CPU exception types\r
 //\r
 #include <Protocol/DebugSupport.h>\r
 \r
@@ -711,6 +711,9 @@ typedef struct {
 #define EFI_SOFTWARE_EFI_BOOT_SERVICE     (EFI_SOFTWARE | 0x00100000)\r
 #define EFI_SOFTWARE_EFI_RUNTIME_SERVICE  (EFI_SOFTWARE | 0x00110000)\r
 #define EFI_SOFTWARE_EFI_DXE_SERVICE      (EFI_SOFTWARE | 0x00120000)\r
+#define EFI_SOFTWARE_X64_EXCEPTION        (EFI_SOFTWARE | 0x00130000)\r
+#define EFI_SOFTWARE_ARM_EXCEPTION        (EFI_SOFTWARE | 0x00140000)\r
+\r
 ///@}\r
 \r
 ///\r
@@ -806,6 +809,14 @@ typedef struct {
 #define EFI_SW_RT_PC_RETURN_TO_LAST   (EFI_SUBCLASS_SPECIFIC | 0x00000002)\r
 ///@}\r
 \r
+//\r
+// Software Class X64 Exception Subclass Progress Code definitions.\r
+//\r
+\r
+//\r
+// Software Class ARM Exception Subclass Progress Code definitions.\r
+//\r
+\r
 //\r
 // Software Class EBC Exception Subclass Progress Code definitions.\r
 //\r
@@ -1121,8 +1132,65 @@ typedef struct {
 // Software Class EFI Runtime Service Subclass Error Code definitions.\r
 //\r
 \r
-//\r
-// Software Class EFI DXE Service Subclass Error Code definitions.\r
-//\r
+///\r
+/// Software Class EFI DXE Service Subclass Error Code definitions.\r
+///\r
+///@{\r
+#define EFI_SW_DXE_BS_PC_BEGIN_CONNECTING_DRIVERS   (EFI_SUBCLASS_SPECIFIC | 0x00000005)\r
+#define EFI_SW_DXE_BS_PC_VERIFYING_PASSWORD         (EFI_SUBCLASS_SPECIFIC | 0x00000006)\r
+///@}\r
+\r
+///\r
+/// Software Class DXE RT Driver Subclass Progress Code definitions.\r
+///\r
+///@{\r
+#define EFI_SW_DXE_RT_PC_S0                         (EFI_SUBCLASS_SPECIFIC | 0x00000000)\r
+#define EFI_SW_DXE_RT_PC_S1                         (EFI_SUBCLASS_SPECIFIC | 0x00000001)\r
+#define EFI_SW_DXE_RT_PC_S2                         (EFI_SUBCLASS_SPECIFIC | 0x00000002)\r
+#define EFI_SW_DXE_RT_PC_S3                         (EFI_SUBCLASS_SPECIFIC | 0x00000003)\r
+#define EFI_SW_DXE_RT_PC_S4                         (EFI_SUBCLASS_SPECIFIC | 0x00000004)\r
+#define EFI_SW_DXE_RT_PC_S5                         (EFI_SUBCLASS_SPECIFIC | 0x00000005)\r
+///@}\r
+\r
+///\r
+/// Software Class X64 Exception Subclass Error Code definitions.\r
+/// These exceptions are derived from the debug protocol\r
+/// definitions in the EFI specification.\r
+///\r
+///@{\r
+#define EFI_SW_EC_X64_DIVIDE_ERROR                   EXCEPT_X64_DIVIDE_ERROR\r
+#define EFI_SW_EC_X64_DEBUG                          EXCEPT_X64_DEBUG\r
+#define EFI_SW_EC_X64_NMI                            EXCEPT_X64_NMI\r
+#define EFI_SW_EC_X64_BREAKPOINT                     EXCEPT_X64_BREAKPOINT\r
+#define EFI_SW_EC_X64_OVERFLOW                       EXCEPT_X64_OVERFLOW\r
+#define EFI_SW_EC_X64_BOUND                          EXCEPT_X64_BOUND\r
+#define EFI_SW_EC_X64_INVALID_OPCODE                 EXCEPT_X64_INVALID_OPCODE\r
+#define EFI_SW_EC_X64_DOUBLE_FAULT                   EXCEPT_X64_DOUBLE_FAULT\r
+#define EFI_SW_EC_X64_INVALID_TSS                    EXCEPT_X64_INVALID_TSS\r
+#define EFI_SW_EC_X64_SEG_NOT_PRESENT                EXCEPT_X64_SEG_NOT_PRESENT\r
+#define EFI_SW_EC_X64_STACK_FAULT                    EXCEPT_X64_STACK_FAULT\r
+#define EFI_SW_EC_X64_GP_FAULT                       EXCEPT_X64_GP_FAULT\r
+#define EFI_SW_EC_X64_PAGE_FAULT                     EXCEPT_X64_PAGE_FAULT\r
+#define EFI_SW_EC_X64_FP_ERROR                       EXCEPT_X64_FP_ERROR\r
+#define EFI_SW_EC_X64_ALIGNMENT_CHECK                EXCEPT_X64_ALIGNMENT_CHECK\r
+#define EFI_SW_EC_X64_MACHINE_CHECK                  EXCEPT_X64_MACHINE_CHECK\r
+#define EFI_SW_EC_X64_SIMD                           EXCEPT_X64_SIMD\r
+///@}\r
+\r
+///\r
+/// Software Class ARM Exception Subclass Error Code definitions.\r
+/// These exceptions are derived from the debug protocol\r
+/// definitions in the EFI specification.\r
+///\r
+///@{\r
+#define EFI_SW_EC_ARM_RESET                          EXCEPT_ARM_RESET \r
+#define EFI_SW_EC_ARM_UNDEFINED_INSTRUCTION          EXCEPT_ARM_UNDEFINED_INSTRUCTION \r
+#define EFI_SW_EC_ARM_SOFTWARE_INTERRUPT             EXCEPT_ARM_SOFTWARE_INTERRUPT \r
+#define EFI_SW_EC_ARM_PREFETCH_ABORT                 EXCEPT_ARM_PREFETCH_ABORT\r
+#define EFI_SW_EC_ARM_DATA_ABORT                     EXCEPT_ARM_DATA_ABORT\r
+#define EFI_SW_EC_ARM_RESERVED                       EXCEPT_ARM_RESERVED\r
+#define EFI_SW_EC_ARM_IRQ                            EXCEPT_ARM_IRQ\r
+#define EFI_SW_EC_ARM_FIQ                            EXCEPT_ARM_FIQ\r
+///@}\r
 \r
 #endif\r