-//\r
-// Status Code Type Definition\r
-//\r
-typedef UINT32 EFI_STATUS_CODE_TYPE;\r
-\r
-//\r
-// A Status Code Type is made up of the code type and severity\r
-// All values masked by EFI_STATUS_CODE_RESERVED_MASK are\r
-// reserved for use by this specification.\r
-//\r
-#define EFI_STATUS_CODE_TYPE_MASK 0x000000FF\r
-#define EFI_STATUS_CODE_SEVERITY_MASK 0xFF000000\r
-#define EFI_STATUS_CODE_RESERVED_MASK 0x00FFFF00\r
-\r
-//\r
-// Definition of code types, all other values masked by\r
-// EFI_STATUS_CODE_TYPE_MASK are reserved for use by\r
-// this specification.\r
-//\r
-#define EFI_PROGRESS_CODE 0x00000001\r
-#define EFI_ERROR_CODE 0x00000002\r
-#define EFI_DEBUG_CODE 0x00000003\r
-\r
-//\r
-// Definitions of severities, all other values masked by\r
-// EFI_STATUS_CODE_SEVERITY_MASK are reserved for use by\r
-// this specification.\r
-// Uncontained errors are major errors that could not contained\r
-// to the specific component that is reporting the error\r
-// For example, if a memory error was not detected early enough,\r
-// the bad data could be consumed by other drivers.\r
-//\r
-#define EFI_ERROR_MINOR 0x40000000\r
-#define EFI_ERROR_MAJOR 0x80000000\r
-#define EFI_ERROR_UNRECOVERED 0x90000000\r
-#define EFI_ERROR_UNCONTAINED 0xa0000000\r
-\r
-//\r
-// Status Code Value Definition\r
-//\r
-typedef UINT32 EFI_STATUS_CODE_VALUE;\r
-//\r
-// A Status Code Value is made up of the class, subclass, and\r
-// an operation.\r
-//\r
-#define EFI_STATUS_CODE_CLASS_MASK 0xFF000000\r
-#define EFI_STATUS_CODE_SUBCLASS_MASK 0x00FF0000\r
-#define EFI_STATUS_CODE_OPERATION_MASK 0x0000FFFF\r
-//\r
-// Definition of Status Code extended data header.\r
-// The data will follow HeaderSize bytes from the beginning of\r
-// the structure and is Size bytes long.\r
-//\r
+///\r
+/// Return status codes defined in SMM CIS.\r
+///\r
+#define EFI_INTERRUPT_PENDING PI_ENCODE_ERROR (0)\r
+\r
+#define EFI_WARN_INTERRUPT_SOURCE_PENDING PI_ENCODE_WARNING (0)\r
+#define EFI_WARN_INTERRUPT_SOURCE_QUIESCED PI_ENCODE_WARNING (1)\r
+\r
+///\r
+/// Bitmask of values for Authentication Status.\r
+/// Authentication Status is returned from EFI_GUIDED_SECTION_EXTRACTION_PROTOCOL\r
+/// and the EFI_PEI_GUIDED_SECTION_EXTRACTION_PPI\r
+///\r
+/// xx00 Image was not signed.\r
+/// xxx1 Platform security policy override. Assumes the same meaning as 0010 (the image was signed, the\r
+/// signature was tested, and the signature passed authentication test).\r
+/// 0010 Image was signed, the signature was tested, and the signature passed authentication test.\r
+/// 0110 Image was signed and the signature was not tested.\r
+/// 1010 Image was signed, the signature was tested, and the signature failed the authentication test.\r
+///\r
+///@{\r
+#define EFI_AUTH_STATUS_PLATFORM_OVERRIDE 0x01\r
+#define EFI_AUTH_STATUS_IMAGE_SIGNED 0x02\r
+#define EFI_AUTH_STATUS_NOT_TESTED 0x04\r
+#define EFI_AUTH_STATUS_TEST_FAILED 0x08\r
+#define EFI_AUTH_STATUS_ALL 0x0f\r
+///@}\r
+\r
+///\r
+/// MMRAM states and capabilities\r
+///\r
+#define EFI_MMRAM_OPEN 0x00000001\r
+#define EFI_MMRAM_CLOSED 0x00000002\r
+#define EFI_MMRAM_LOCKED 0x00000004\r
+#define EFI_CACHEABLE 0x00000008\r
+#define EFI_ALLOCATED 0x00000010\r
+#define EFI_NEEDS_TESTING 0x00000020\r
+#define EFI_NEEDS_ECC_INITIALIZATION 0x00000040\r
+\r
+#define EFI_SMRAM_OPEN EFI_MMRAM_OPEN\r
+#define EFI_SMRAM_CLOSED EFI_MMRAM_CLOSED\r
+#define EFI_SMRAM_LOCKED EFI_MMRAM_LOCKED\r
+\r
+///\r
+/// Structure describing a MMRAM region and its accessibility attributes.\r
+///\r