00001 /** @file 00002 Include file matches things in PI for multiple module types. 00003 00004 Copyright (c) 2006 - 2008, Intel Corporation 00005 All rights reserved. This program and the accompanying materials 00006 are licensed and made available under the terms and conditions of the BSD License 00007 which accompanies this distribution. The full text of the license may be found at 00008 http://opensource.org/licenses/bsd-license.php 00009 00010 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 00011 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 00012 00013 @par Revision Reference: 00014 PI Version 1.0 00015 00016 **/ 00017 00018 #ifndef __PI_MULTIPHASE_H__ 00019 #define __PI_MULTIPHASE_H__ 00020 00021 #include <gpxe/efi/Uefi/UefiMultiPhase.h> 00022 00023 #include <gpxe/efi/Pi/PiFirmwareVolume.h> 00024 #include <gpxe/efi/Pi/PiFirmwareFile.h> 00025 #include <gpxe/efi/Pi/PiBootMode.h> 00026 00027 #include <gpxe/efi/Pi/PiHob.h> 00028 #include <gpxe/efi/Pi/PiDependency.h> 00029 00030 00031 #define EFI_NOT_AVAILABLE_YET EFIERR (32) 00032 00033 /// 00034 /// Status Code Type Definition 00035 /// 00036 typedef UINT32 EFI_STATUS_CODE_TYPE; 00037 00038 // 00039 // A Status Code Type is made up of the code type and severity 00040 // All values masked by EFI_STATUS_CODE_RESERVED_MASK are 00041 // reserved for use by this specification. 00042 // 00043 #define EFI_STATUS_CODE_TYPE_MASK 0x000000FF 00044 #define EFI_STATUS_CODE_SEVERITY_MASK 0xFF000000 00045 #define EFI_STATUS_CODE_RESERVED_MASK 0x00FFFF00 00046 00047 // 00048 // Definition of code types, all other values masked by 00049 // EFI_STATUS_CODE_TYPE_MASK are reserved for use by 00050 // this specification. 00051 // 00052 #define EFI_PROGRESS_CODE 0x00000001 00053 #define EFI_ERROR_CODE 0x00000002 00054 #define EFI_DEBUG_CODE 0x00000003 00055 00056 // 00057 // Definitions of severities, all other values masked by 00058 // EFI_STATUS_CODE_SEVERITY_MASK are reserved for use by 00059 // this specification. 00060 // Uncontained errors are major errors that could not contained 00061 // to the specific component that is reporting the error 00062 // For example, if a memory error was not detected early enough, 00063 // the bad data could be consumed by other drivers. 00064 // 00065 #define EFI_ERROR_MINOR 0x40000000 00066 #define EFI_ERROR_MAJOR 0x80000000 00067 #define EFI_ERROR_UNRECOVERED 0x90000000 00068 #define EFI_ERROR_UNCONTAINED 0xa0000000 00069 00070 /// 00071 /// Status Code Value Definition 00072 /// 00073 typedef UINT32 EFI_STATUS_CODE_VALUE; 00074 00075 // 00076 // A Status Code Value is made up of the class, subclass, and 00077 // an operation. 00078 // 00079 #define EFI_STATUS_CODE_CLASS_MASK 0xFF000000 00080 #define EFI_STATUS_CODE_SUBCLASS_MASK 0x00FF0000 00081 #define EFI_STATUS_CODE_OPERATION_MASK 0x0000FFFF 00082 00083 /// 00084 /// Definition of Status Code extended data header. 00085 /// The data will follow HeaderSize bytes from the beginning of 00086 /// the structure and is Size bytes long. 00087 /// 00088 typedef struct { 00089 UINT16 HeaderSize; 00090 UINT16 Size; 00091 EFI_GUID Type; 00092 } EFI_STATUS_CODE_DATA; 00093 00094 00095 // 00096 // Bit values for Authentication Status 00097 // 00098 #define EFI_AUTH_STATUS_PLATFORM_OVERRIDE 0x01 00099 #define EFI_AUTH_STATUS_IMAGE_SIGNED 0x02 00100 #define EFI_AUTH_STATUS_NOT_TESTED 0x04 00101 #define EFI_AUTH_STATUS_TEST_FAILED 0x08 00102 #define EFI_AUTH_STATUS_ALL 0x0f 00103 00104 #endif
1.5.7.1