1) Move the structure definitions related GUID EFI_STATUS_CODE_SPECIFIC_DATA_GUID and EFI_STATUS_CODE_DATA_TYPE_STRING_GUID from IntelFrameworkPkg\Framework/StatusCodeDataTypeId.h to IntelFrameworkPkg\Guid/StatusCodeDataTypeId.h
2) Remove IntelFrameworkPkg/Framework/StatusCodeDataTypeId.h git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@3609 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
parent
c0691ef009
commit
c7458efd36
|
@ -880,4 +880,16 @@
|
||||||
//
|
//
|
||||||
#define EFI_DC_UNSPECIFIED 0x0
|
#define EFI_DC_UNSPECIFIED 0x0
|
||||||
|
|
||||||
|
///////////////////////////////////////////////////////////////////////////////
|
||||||
|
// Common Status Code Definitions
|
||||||
|
///////////////////////////////////////////////////////////////////////////////
|
||||||
|
///
|
||||||
|
/// This is the max data size including all the headers which can be passed
|
||||||
|
/// as Status Code data. This data should be multiple of 8 byte
|
||||||
|
/// to avoid any kind of boundary issue. Also, sum of this data size (inclusive
|
||||||
|
/// of size of EFI_STATUS_CODE_DATA should not exceed the max record size of
|
||||||
|
/// data hub
|
||||||
|
///
|
||||||
|
#define EFI_STATUS_CODE_DATA_MAX_SIZE 200
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -1,324 +0,0 @@
|
||||||
/** @file
|
|
||||||
This file defines the data structures to support Status Code Data.
|
|
||||||
|
|
||||||
Copyright (c) 2007, Intel Corporation
|
|
||||||
All rights reserved. This program and the accompanying materials
|
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
|
||||||
http://opensource.org/licenses/bsd-license.php
|
|
||||||
|
|
||||||
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
|
||||||
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
|
||||||
|
|
||||||
Module Name: FrameworkStatusCodeDataTypeId.h
|
|
||||||
|
|
||||||
@par Revision Reference:
|
|
||||||
These definitions are from Framework of EFI Status Code Spec
|
|
||||||
Version 0.92.
|
|
||||||
|
|
||||||
**/
|
|
||||||
|
|
||||||
#ifndef __FRAMEWORK_STATUS_CODE_DATA_TYPE_ID_H__
|
|
||||||
#define __FRAMEWORK_STATUS_CODE_DATA_TYPE_ID_H__
|
|
||||||
|
|
||||||
#include <Framework/DataHubRecords.h>
|
|
||||||
#include <Protocol/DebugSupport.h>
|
|
||||||
|
|
||||||
///
|
|
||||||
/// This is the max data size including all the headers which can be passed
|
|
||||||
/// as Status Code data. This data should be multiple of 8 byte
|
|
||||||
/// to avoid any kind of boundary issue. Also, sum of this data size (inclusive
|
|
||||||
/// of size of EFI_STATUS_CODE_DATA should not exceed the max record size of
|
|
||||||
/// data hub
|
|
||||||
///
|
|
||||||
#define EFI_STATUS_CODE_DATA_MAX_SIZE 200
|
|
||||||
|
|
||||||
#pragma pack(1)
|
|
||||||
typedef enum {
|
|
||||||
EfiStringAscii,
|
|
||||||
EfiStringUnicode,
|
|
||||||
EfiStringToken
|
|
||||||
} EFI_STRING_TYPE;
|
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
EFI_HII_HANDLE Handle;
|
|
||||||
STRING_REF Token;
|
|
||||||
} EFI_STATUS_CODE_STRING_TOKEN;
|
|
||||||
|
|
||||||
typedef union {
|
|
||||||
CHAR8 *Ascii;
|
|
||||||
CHAR16 *Unicode;
|
|
||||||
EFI_STATUS_CODE_STRING_TOKEN Hii;
|
|
||||||
} EFI_STATUS_CODE_STRING;
|
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
EFI_STATUS_CODE_DATA DataHeader;
|
|
||||||
EFI_STRING_TYPE StringType;
|
|
||||||
EFI_STATUS_CODE_STRING String;
|
|
||||||
} EFI_STATUS_CODE_STRING_DATA;
|
|
||||||
|
|
||||||
#pragma pack()
|
|
||||||
|
|
||||||
//
|
|
||||||
// declaration for EFI_EXP_DATA. This may change
|
|
||||||
//
|
|
||||||
// typedef UINTN EFI_EXP_DATA;
|
|
||||||
|
|
||||||
///
|
|
||||||
/// Voltage Extended Error Data
|
|
||||||
///
|
|
||||||
typedef struct {
|
|
||||||
EFI_STATUS_CODE_DATA DataHeader;
|
|
||||||
EFI_EXP_BASE10_DATA Voltage;
|
|
||||||
EFI_EXP_BASE10_DATA Threshold;
|
|
||||||
} EFI_COMPUTING_UNIT_VOLTAGE_ERROR_DATA;
|
|
||||||
|
|
||||||
///
|
|
||||||
/// Microcode Update Extended Error Data
|
|
||||||
///
|
|
||||||
typedef struct {
|
|
||||||
EFI_STATUS_CODE_DATA DataHeader;
|
|
||||||
UINT32 Version;
|
|
||||||
} EFI_COMPUTING_UNIT_MICROCODE_UPDATE_ERROR_DATA;
|
|
||||||
|
|
||||||
|
|
||||||
///
|
|
||||||
/// Asynchronous Timer Extended Error Data
|
|
||||||
///
|
|
||||||
typedef struct {
|
|
||||||
EFI_STATUS_CODE_DATA DataHeader;
|
|
||||||
EFI_EXP_BASE10_DATA TimerLimit;
|
|
||||||
} EFI_COMPUTING_UNIT_TIMER_EXPIRED_ERROR_DATA;
|
|
||||||
|
|
||||||
///
|
|
||||||
/// Host Processor Mismatch Extended Error Data
|
|
||||||
///
|
|
||||||
typedef struct {
|
|
||||||
EFI_STATUS_CODE_DATA DataHeader;
|
|
||||||
UINT32 Instance;
|
|
||||||
UINT16 Attributes;
|
|
||||||
} EFI_HOST_PROCESSOR_MISMATCH_ERROR_DATA;
|
|
||||||
|
|
||||||
//
|
|
||||||
// EFI_COMPUTING_UNIT_MISMATCH_ATTRIBUTES
|
|
||||||
// All other attributes are reserved for future use and
|
|
||||||
// must be initialized to 0.
|
|
||||||
//
|
|
||||||
#define EFI_COMPUTING_UNIT_MISMATCH_SPEED 0x0001
|
|
||||||
#define EFI_COMPUTING_UNIT_MISMATCH_FSB_SPEED 0x0002
|
|
||||||
#define EFI_COMPUTING_UNIT_MISMATCH_FAMILY 0x0004
|
|
||||||
#define EFI_COMPUTING_UNIT_MISMATCH_MODEL 0x0008
|
|
||||||
#define EFI_COMPUTING_UNIT_MISMATCH_STEPPING 0x0010
|
|
||||||
#define EFI_COMPUTING_UNIT_MISMATCH_CACHE_SIZE 0x0020
|
|
||||||
#define EFI_COMPUTING_UNIT_MISMATCH_OEM1 0x1000
|
|
||||||
#define EFI_COMPUTING_UNIT_MISMATCH_OEM2 0x2000
|
|
||||||
#define EFI_COMPUTING_UNIT_MISMATCH_OEM3 0x4000
|
|
||||||
#define EFI_COMPUTING_UNIT_MISMATCH_OEM4 0x8000
|
|
||||||
|
|
||||||
///
|
|
||||||
/// Thermal Extended Error Data
|
|
||||||
///
|
|
||||||
typedef struct {
|
|
||||||
EFI_STATUS_CODE_DATA DataHeader;
|
|
||||||
EFI_EXP_BASE10_DATA Temperature;
|
|
||||||
EFI_EXP_BASE10_DATA Threshold;
|
|
||||||
} EFI_COMPUTING_UNIT_THERMAL_ERROR_DATA;
|
|
||||||
|
|
||||||
///
|
|
||||||
/// Processor Disabled Extended Error Data
|
|
||||||
///
|
|
||||||
typedef struct {
|
|
||||||
EFI_STATUS_CODE_DATA DataHeader;
|
|
||||||
UINT32 Cause;
|
|
||||||
BOOLEAN SoftwareDisabled;
|
|
||||||
} EFI_COMPUTING_UNIT_CPU_DISABLED_ERROR_DATA;
|
|
||||||
|
|
||||||
|
|
||||||
typedef enum {
|
|
||||||
EfiInitCacheDataOnly,
|
|
||||||
EfiInitCacheInstrOnly,
|
|
||||||
EfiInitCacheBoth,
|
|
||||||
EfiInitCacheUnspecified
|
|
||||||
} EFI_INIT_CACHE_TYPE;
|
|
||||||
|
|
||||||
///
|
|
||||||
/// Embedded cache init extended data
|
|
||||||
///
|
|
||||||
typedef struct {
|
|
||||||
EFI_STATUS_CODE_DATA DataHeader;
|
|
||||||
UINT32 Level;
|
|
||||||
EFI_INIT_CACHE_TYPE Type;
|
|
||||||
} EFI_CACHE_INIT_DATA;
|
|
||||||
|
|
||||||
//
|
|
||||||
// Memory Extended Error Data
|
|
||||||
//
|
|
||||||
|
|
||||||
///
|
|
||||||
/// Memory Error Granularity Definition
|
|
||||||
///
|
|
||||||
typedef UINT8 EFI_MEMORY_ERROR_GRANULARITY;
|
|
||||||
|
|
||||||
///
|
|
||||||
/// Memory Error Operation Definition
|
|
||||||
///
|
|
||||||
typedef UINT8 EFI_MEMORY_ERROR_OPERATION;
|
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
EFI_STATUS_CODE_DATA DataHeader;
|
|
||||||
EFI_MEMORY_ERROR_GRANULARITY Granularity;
|
|
||||||
EFI_MEMORY_ERROR_OPERATION Operation;
|
|
||||||
UINTN Syndrome;
|
|
||||||
EFI_PHYSICAL_ADDRESS Address;
|
|
||||||
UINTN Resolution;
|
|
||||||
} EFI_MEMORY_EXTENDED_ERROR_DATA;
|
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
EFI_MEMORY_ERROR_GRANULARITY Granularity;
|
|
||||||
EFI_MEMORY_ERROR_OPERATION Operation;
|
|
||||||
UINTN Syndrome;
|
|
||||||
EFI_PHYSICAL_ADDRESS Address;
|
|
||||||
UINTN Resolution;
|
|
||||||
} EFI_MEMORY_EXTENDED_ERROR_DATA_PAYLOAD;
|
|
||||||
|
|
||||||
//
|
|
||||||
// Memory Error Granularities
|
|
||||||
//
|
|
||||||
#define EFI_MEMORY_ERROR_OTHER 0x01
|
|
||||||
#define EFI_MEMORY_ERROR_UNKNOWN 0x02
|
|
||||||
#define EFI_MEMORY_ERROR_DEVICE 0x03
|
|
||||||
#define EFI_MEMORY_ERROR_PARTITION 0x04
|
|
||||||
|
|
||||||
//
|
|
||||||
// Memory Error Operations
|
|
||||||
//
|
|
||||||
#define EFI_MEMORY_OPERATION_OTHER 0x01
|
|
||||||
#define EFI_MEMORY_OPERATION_UNKNOWN 0x02
|
|
||||||
#define EFI_MEMORY_OPERATION_READ 0x03
|
|
||||||
#define EFI_MEMORY_OPERATION_WRITE 0x04
|
|
||||||
#define EFI_MEMORY_OPERATION_PARTIAL_WRITE 0x05
|
|
||||||
|
|
||||||
//
|
|
||||||
// Define shorthands to describe Group Operations
|
|
||||||
// Many memory init operations are essentially group
|
|
||||||
// operations.
|
|
||||||
|
|
||||||
/// A shorthand to describe that the operation is performed
|
|
||||||
/// on multiple devices within the array
|
|
||||||
///
|
|
||||||
#define EFI_MULTIPLE_MEMORY_DEVICE_OPERATION 0xfffe
|
|
||||||
///
|
|
||||||
/// A shorthand to describe that the operation is performed on all devices within the array
|
|
||||||
///
|
|
||||||
#define EFI_ALL_MEMORY_DEVICE_OPERATION 0xffff
|
|
||||||
///
|
|
||||||
/// A shorthand to describe that the operation is performed on multiple arrays
|
|
||||||
///
|
|
||||||
#define EFI_MULTIPLE_MEMORY_ARRAY_OPERATION 0xfffe
|
|
||||||
///
|
|
||||||
/// A shorthand to describe that the operation is performed on all the arrays
|
|
||||||
///
|
|
||||||
#define EFI_ALL_MEMORY_ARRAY_OPERATION 0xffff
|
|
||||||
|
|
||||||
//
|
|
||||||
// DIMM number
|
|
||||||
//
|
|
||||||
#pragma pack(1)
|
|
||||||
typedef struct {
|
|
||||||
EFI_STATUS_CODE_DATA DataHeader;
|
|
||||||
UINT16 Array;
|
|
||||||
UINT16 Device;
|
|
||||||
} EFI_STATUS_CODE_DIMM_NUMBER;
|
|
||||||
|
|
||||||
#pragma pack()
|
|
||||||
|
|
||||||
///
|
|
||||||
/// Memory Module Mismatch Extended Error Data
|
|
||||||
///
|
|
||||||
typedef struct {
|
|
||||||
EFI_STATUS_CODE_DATA DataHeader;
|
|
||||||
EFI_STATUS_CODE_DIMM_NUMBER Instance;
|
|
||||||
} EFI_MEMORY_MODULE_MISMATCH_ERROR_DATA;
|
|
||||||
|
|
||||||
|
|
||||||
///
|
|
||||||
/// Memory Range Extended Data
|
|
||||||
///
|
|
||||||
typedef struct {
|
|
||||||
EFI_STATUS_CODE_DATA DataHeader;
|
|
||||||
EFI_PHYSICAL_ADDRESS Start;
|
|
||||||
EFI_PHYSICAL_ADDRESS Length;
|
|
||||||
} EFI_MEMORY_RANGE_EXTENDED_DATA;
|
|
||||||
|
|
||||||
///
|
|
||||||
/// Device handle Extended Data. Used for many
|
|
||||||
/// errors and progress codes to point to the device.
|
|
||||||
///
|
|
||||||
typedef struct {
|
|
||||||
EFI_STATUS_CODE_DATA DataHeader;
|
|
||||||
EFI_HANDLE Handle;
|
|
||||||
} EFI_DEVICE_HANDLE_EXTENDED_DATA;
|
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
EFI_STATUS_CODE_DATA DataHeader;
|
|
||||||
UINT8 *DevicePath;
|
|
||||||
} EFI_DEVICE_PATH_EXTENDED_DATA;
|
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
EFI_STATUS_CODE_DATA DataHeader;
|
|
||||||
EFI_HANDLE ControllerHandle;
|
|
||||||
EFI_HANDLE DriverBindingHandle;
|
|
||||||
UINT16 DevicePathSize;
|
|
||||||
UINT8 *RemainingDevicePath;
|
|
||||||
} EFI_STATUS_CODE_START_EXTENDED_DATA;
|
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
UINT8 *DevicePath;
|
|
||||||
} EFI_DEVICE_PATH_EXTENDED_DATA_PAYLOAD;
|
|
||||||
|
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
EFI_STATUS_CODE_DATA DataHeader;
|
|
||||||
UINT32 Bar;
|
|
||||||
UINT16 DevicePathSize;
|
|
||||||
UINT16 ReqResSize;
|
|
||||||
UINT16 AllocResSize;
|
|
||||||
UINT8 *DevicePath;
|
|
||||||
UINT8 *ReqRes;
|
|
||||||
UINT8 *AllocRes;
|
|
||||||
} EFI_RESOURCE_ALLOC_FAILURE_ERROR_DATA;
|
|
||||||
|
|
||||||
///
|
|
||||||
/// Extended Error Data for Assert
|
|
||||||
///
|
|
||||||
typedef struct {
|
|
||||||
EFI_STATUS_CODE_DATA DataHeader;
|
|
||||||
UINT32 LineNumber;
|
|
||||||
UINT32 FileNameSize;
|
|
||||||
EFI_STATUS_CODE_STRING_DATA *FileName;
|
|
||||||
} EFI_DEBUG_ASSERT_DATA;
|
|
||||||
|
|
||||||
///
|
|
||||||
/// System Context Data EBC/IA32/IPF
|
|
||||||
///
|
|
||||||
typedef union {
|
|
||||||
EFI_SYSTEM_CONTEXT_EBC SystemContextEbc;
|
|
||||||
EFI_SYSTEM_CONTEXT_IA32 SystemContextIa32;
|
|
||||||
EFI_SYSTEM_CONTEXT_IPF SystemContextIpf;
|
|
||||||
} EFI_STATUS_CODE_EXCEP_SYSTEM_CONTEXT;
|
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
EFI_STATUS_CODE_DATA DataHeader;
|
|
||||||
EFI_STATUS_CODE_EXCEP_SYSTEM_CONTEXT Context;
|
|
||||||
} EFI_STATUS_CODE_EXCEP_EXTENDED_DATA;
|
|
||||||
|
|
||||||
///
|
|
||||||
/// Legacy Oprom extended data
|
|
||||||
///
|
|
||||||
typedef struct {
|
|
||||||
EFI_STATUS_CODE_DATA DataHeader;
|
|
||||||
EFI_HANDLE DeviceHandle;
|
|
||||||
EFI_PHYSICAL_ADDRESS RomImageBase;
|
|
||||||
} EFI_LEGACY_OPROM_EXTENDED_DATA;
|
|
||||||
|
|
||||||
#endif
|
|
|
@ -28,6 +28,5 @@
|
||||||
#include <Framework/Hob.h>
|
#include <Framework/Hob.h>
|
||||||
#include <Framework/Legacy16.h>
|
#include <Framework/Legacy16.h>
|
||||||
#include <Framework/StatusCode.h>
|
#include <Framework/StatusCode.h>
|
||||||
#include <Framework/StatusCodeDataTypeId.h>
|
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -21,24 +21,295 @@
|
||||||
#define __STATUS_CODE_DATA_TYPE_ID_GUID_H__
|
#define __STATUS_CODE_DATA_TYPE_ID_GUID_H__
|
||||||
|
|
||||||
#include <PiPei.h>
|
#include <PiPei.h>
|
||||||
|
#include <Framework/StatusCode.h>
|
||||||
|
#include <Framework/DataHubRecords.h>
|
||||||
|
#include <Protocol/DebugSupport.h>
|
||||||
|
|
||||||
//
|
//////////////////////////////////////////////////////////////////////////////////////////
|
||||||
// String Data Type defintion. This is part of Status Code Specification
|
// String Data Type defintion. This is part of Status Code Specification
|
||||||
//
|
//////////////////////////////////////////////////////////////////////////////////////////
|
||||||
#define EFI_STATUS_CODE_DATA_TYPE_STRING_GUID \
|
#define EFI_STATUS_CODE_DATA_TYPE_STRING_GUID \
|
||||||
{ 0x92D11080, 0x496F, 0x4D95, { 0xBE, 0x7E, 0x03, 0x74, 0x88, 0x38, 0x2B, 0x0A } }
|
{ 0x92D11080, 0x496F, 0x4D95, { 0xBE, 0x7E, 0x03, 0x74, 0x88, 0x38, 0x2B, 0x0A } }
|
||||||
|
|
||||||
|
#pragma pack(1)
|
||||||
|
|
||||||
|
typedef enum {
|
||||||
|
EfiStringAscii,
|
||||||
|
EfiStringUnicode,
|
||||||
|
EfiStringToken
|
||||||
|
} EFI_STRING_TYPE;
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
EFI_HII_HANDLE Handle;
|
||||||
|
STRING_REF Token;
|
||||||
|
} EFI_STATUS_CODE_STRING_TOKEN;
|
||||||
|
|
||||||
|
typedef union {
|
||||||
|
CHAR8 *Ascii;
|
||||||
|
CHAR16 *Unicode;
|
||||||
|
EFI_STATUS_CODE_STRING_TOKEN Hii;
|
||||||
|
} EFI_STATUS_CODE_STRING;
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
EFI_STATUS_CODE_DATA DataHeader;
|
||||||
|
EFI_STRING_TYPE StringType;
|
||||||
|
EFI_STATUS_CODE_STRING String;
|
||||||
|
} EFI_STATUS_CODE_STRING_DATA;
|
||||||
|
#pragma pack()
|
||||||
|
|
||||||
extern EFI_GUID gEfiStatusCodeDataTypeStringGuid;
|
extern EFI_GUID gEfiStatusCodeDataTypeStringGuid;
|
||||||
|
|
||||||
//
|
|
||||||
// This GUID indicates that the format of the accompanying data depends
|
//////////////////////////////////////////////////////////////////////////////////////////
|
||||||
// upon the Status Code Value, but follows this Specification
|
// Special Data Type defintion. This is part of Status Code Specification
|
||||||
//
|
//////////////////////////////////////////////////////////////////////////////////////////
|
||||||
#define EFI_STATUS_CODE_SPECIFIC_DATA_GUID \
|
#define EFI_STATUS_CODE_SPECIFIC_DATA_GUID \
|
||||||
{ 0x335984bd, 0xe805, 0x409a, { 0xb8, 0xf8, 0xd2, 0x7e, 0xce, 0x5f, 0xf7, 0xa6 } }
|
{ 0x335984bd, 0xe805, 0x409a, { 0xb8, 0xf8, 0xd2, 0x7e, 0xce, 0x5f, 0xf7, 0xa6 } }
|
||||||
|
|
||||||
|
#pragma pack(1)
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Device handle Extended Data. Used for many
|
||||||
|
/// errors and progress codes to point to the device.
|
||||||
|
///
|
||||||
|
typedef struct {
|
||||||
|
EFI_STATUS_CODE_DATA DataHeader;
|
||||||
|
EFI_HANDLE Handle;
|
||||||
|
} EFI_DEVICE_HANDLE_EXTENDED_DATA;
|
||||||
|
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
EFI_STATUS_CODE_DATA DataHeader;
|
||||||
|
UINT8 *DevicePath;
|
||||||
|
} EFI_DEVICE_PATH_EXTENDED_DATA;
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
EFI_STATUS_CODE_DATA DataHeader;
|
||||||
|
UINT32 Bar;
|
||||||
|
UINT16 DevicePathSize;
|
||||||
|
UINT16 ReqResSize;
|
||||||
|
UINT16 AllocResSize;
|
||||||
|
UINT8 *DevicePath;
|
||||||
|
UINT8 *ReqRes;
|
||||||
|
UINT8 *AllocRes;
|
||||||
|
} EFI_RESOURCE_ALLOC_FAILURE_ERROR_DATA;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Voltage Extended Error Data
|
||||||
|
///
|
||||||
|
typedef struct {
|
||||||
|
EFI_STATUS_CODE_DATA DataHeader;
|
||||||
|
EFI_EXP_BASE10_DATA Voltage;
|
||||||
|
EFI_EXP_BASE10_DATA Threshold;
|
||||||
|
} EFI_COMPUTING_UNIT_VOLTAGE_ERROR_DATA;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Microcode Update Extended Error Data
|
||||||
|
///
|
||||||
|
typedef struct {
|
||||||
|
EFI_STATUS_CODE_DATA DataHeader;
|
||||||
|
UINT32 Version;
|
||||||
|
} EFI_COMPUTING_UNIT_MICROCODE_UPDATE_ERROR_DATA;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Asynchronous Timer Extended Error Data
|
||||||
|
///
|
||||||
|
typedef struct {
|
||||||
|
EFI_STATUS_CODE_DATA DataHeader;
|
||||||
|
EFI_EXP_BASE10_DATA TimerLimit;
|
||||||
|
} EFI_COMPUTING_UNIT_TIMER_EXPIRED_ERROR_DATA;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Host Processor Mismatch Extended Error Data
|
||||||
|
///
|
||||||
|
typedef struct {
|
||||||
|
EFI_STATUS_CODE_DATA DataHeader;
|
||||||
|
UINT32 Instance;
|
||||||
|
UINT16 Attributes;
|
||||||
|
} EFI_HOST_PROCESSOR_MISMATCH_ERROR_DATA;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Thermal Extended Error Data
|
||||||
|
///
|
||||||
|
typedef struct {
|
||||||
|
EFI_STATUS_CODE_DATA DataHeader;
|
||||||
|
EFI_EXP_BASE10_DATA Temperature;
|
||||||
|
EFI_EXP_BASE10_DATA Threshold;
|
||||||
|
} EFI_COMPUTING_UNIT_THERMAL_ERROR_DATA;
|
||||||
|
|
||||||
|
|
||||||
|
typedef enum {
|
||||||
|
EfiInitCacheDataOnly,
|
||||||
|
EfiInitCacheInstrOnly,
|
||||||
|
EfiInitCacheBoth,
|
||||||
|
EfiInitCacheUnspecified
|
||||||
|
} EFI_INIT_CACHE_TYPE;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Embedded cache init extended data
|
||||||
|
///
|
||||||
|
typedef struct {
|
||||||
|
EFI_STATUS_CODE_DATA DataHeader;
|
||||||
|
UINT32 Level;
|
||||||
|
EFI_INIT_CACHE_TYPE Type;
|
||||||
|
} EFI_CACHE_INIT_DATA;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Processor Disabled Extended Error Data
|
||||||
|
///
|
||||||
|
typedef struct {
|
||||||
|
EFI_STATUS_CODE_DATA DataHeader;
|
||||||
|
UINT32 Cause;
|
||||||
|
BOOLEAN SoftwareDisabled;
|
||||||
|
} EFI_COMPUTING_UNIT_CPU_DISABLED_ERROR_DATA;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Memory Error Operation Definition
|
||||||
|
///
|
||||||
|
typedef UINT8 EFI_MEMORY_ERROR_OPERATION;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Memory Error Granularity Definition
|
||||||
|
///
|
||||||
|
typedef UINT8 EFI_MEMORY_ERROR_GRANULARITY;
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
EFI_STATUS_CODE_DATA DataHeader;
|
||||||
|
EFI_MEMORY_ERROR_GRANULARITY Granularity;
|
||||||
|
EFI_MEMORY_ERROR_OPERATION Operation;
|
||||||
|
UINTN Syndrome;
|
||||||
|
EFI_PHYSICAL_ADDRESS Address;
|
||||||
|
UINTN Resolution;
|
||||||
|
} EFI_MEMORY_EXTENDED_ERROR_DATA;
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
EFI_STATUS_CODE_DATA DataHeader;
|
||||||
|
UINT16 Array;
|
||||||
|
UINT16 Device;
|
||||||
|
} EFI_STATUS_CODE_DIMM_NUMBER;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Memory Module Mismatch Extended Error Data
|
||||||
|
///
|
||||||
|
typedef struct {
|
||||||
|
EFI_STATUS_CODE_DATA DataHeader;
|
||||||
|
EFI_STATUS_CODE_DIMM_NUMBER Instance;
|
||||||
|
} EFI_MEMORY_MODULE_MISMATCH_ERROR_DATA;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Memory Range Extended Data
|
||||||
|
///
|
||||||
|
typedef struct {
|
||||||
|
EFI_STATUS_CODE_DATA DataHeader;
|
||||||
|
EFI_PHYSICAL_ADDRESS Start;
|
||||||
|
EFI_PHYSICAL_ADDRESS Length;
|
||||||
|
} EFI_MEMORY_RANGE_EXTENDED_DATA;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Extended Error Data for Assert
|
||||||
|
///
|
||||||
|
typedef struct {
|
||||||
|
EFI_STATUS_CODE_DATA DataHeader;
|
||||||
|
UINT32 LineNumber;
|
||||||
|
UINT32 FileNameSize;
|
||||||
|
EFI_STATUS_CODE_STRING_DATA *FileName;
|
||||||
|
} EFI_DEBUG_ASSERT_DATA;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// System Context Data EBC/IA32/IPF
|
||||||
|
///
|
||||||
|
typedef union {
|
||||||
|
EFI_SYSTEM_CONTEXT_EBC SystemContextEbc;
|
||||||
|
EFI_SYSTEM_CONTEXT_IA32 SystemContextIa32;
|
||||||
|
EFI_SYSTEM_CONTEXT_IPF SystemContextIpf;
|
||||||
|
} EFI_STATUS_CODE_EXCEP_SYSTEM_CONTEXT;
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
EFI_STATUS_CODE_DATA DataHeader;
|
||||||
|
EFI_STATUS_CODE_EXCEP_SYSTEM_CONTEXT Context;
|
||||||
|
} EFI_STATUS_CODE_EXCEP_EXTENDED_DATA;
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
EFI_STATUS_CODE_DATA DataHeader;
|
||||||
|
EFI_HANDLE ControllerHandle;
|
||||||
|
EFI_HANDLE DriverBindingHandle;
|
||||||
|
UINT16 DevicePathSize;
|
||||||
|
UINT8 *RemainingDevicePath;
|
||||||
|
} EFI_STATUS_CODE_START_EXTENDED_DATA;
|
||||||
|
|
||||||
|
///
|
||||||
|
/// Legacy Oprom extended data
|
||||||
|
///
|
||||||
|
typedef struct {
|
||||||
|
EFI_STATUS_CODE_DATA DataHeader;
|
||||||
|
EFI_HANDLE DeviceHandle;
|
||||||
|
EFI_PHYSICAL_ADDRESS RomImageBase;
|
||||||
|
} EFI_LEGACY_OPROM_EXTENDED_DATA;
|
||||||
|
|
||||||
|
#pragma pack()
|
||||||
|
|
||||||
extern EFI_GUID gEfiStatusCodeSpecificDataGuid;
|
extern EFI_GUID gEfiStatusCodeSpecificDataGuid;
|
||||||
|
|
||||||
|
//
|
||||||
|
// EFI_COMPUTING_UNIT_MISMATCH_ATTRIBUTES
|
||||||
|
// All other attributes are reserved for future use and
|
||||||
|
// must be initialized to 0.
|
||||||
|
//
|
||||||
|
#define EFI_COMPUTING_UNIT_MISMATCH_SPEED 0x0001
|
||||||
|
#define EFI_COMPUTING_UNIT_MISMATCH_FSB_SPEED 0x0002
|
||||||
|
#define EFI_COMPUTING_UNIT_MISMATCH_FAMILY 0x0004
|
||||||
|
#define EFI_COMPUTING_UNIT_MISMATCH_MODEL 0x0008
|
||||||
|
#define EFI_COMPUTING_UNIT_MISMATCH_STEPPING 0x0010
|
||||||
|
#define EFI_COMPUTING_UNIT_MISMATCH_CACHE_SIZE 0x0020
|
||||||
|
#define EFI_COMPUTING_UNIT_MISMATCH_OEM1 0x1000
|
||||||
|
#define EFI_COMPUTING_UNIT_MISMATCH_OEM2 0x2000
|
||||||
|
#define EFI_COMPUTING_UNIT_MISMATCH_OEM3 0x4000
|
||||||
|
#define EFI_COMPUTING_UNIT_MISMATCH_OEM4 0x8000
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
//
|
||||||
|
// Memory Error Granularities
|
||||||
|
//
|
||||||
|
#define EFI_MEMORY_ERROR_OTHER 0x01
|
||||||
|
#define EFI_MEMORY_ERROR_UNKNOWN 0x02
|
||||||
|
#define EFI_MEMORY_ERROR_DEVICE 0x03
|
||||||
|
#define EFI_MEMORY_ERROR_PARTITION 0x04
|
||||||
|
|
||||||
|
//
|
||||||
|
// Memory Error Operations
|
||||||
|
//
|
||||||
|
#define EFI_MEMORY_OPERATION_OTHER 0x01
|
||||||
|
#define EFI_MEMORY_OPERATION_UNKNOWN 0x02
|
||||||
|
#define EFI_MEMORY_OPERATION_READ 0x03
|
||||||
|
#define EFI_MEMORY_OPERATION_WRITE 0x04
|
||||||
|
#define EFI_MEMORY_OPERATION_PARTIAL_WRITE 0x05
|
||||||
|
|
||||||
|
//
|
||||||
|
// Define shorthands to describe Group Operations
|
||||||
|
// Many memory init operations are essentially group
|
||||||
|
// operations.
|
||||||
|
|
||||||
|
/// A shorthand to describe that the operation is performed
|
||||||
|
/// on multiple devices within the array
|
||||||
|
///
|
||||||
|
#define EFI_MULTIPLE_MEMORY_DEVICE_OPERATION 0xfffe
|
||||||
|
///
|
||||||
|
/// A shorthand to describe that the operation is performed on all devices within the array
|
||||||
|
///
|
||||||
|
#define EFI_ALL_MEMORY_DEVICE_OPERATION 0xffff
|
||||||
|
///
|
||||||
|
/// A shorthand to describe that the operation is performed on multiple arrays
|
||||||
|
///
|
||||||
|
#define EFI_MULTIPLE_MEMORY_ARRAY_OPERATION 0xfffe
|
||||||
|
///
|
||||||
|
/// A shorthand to describe that the operation is performed on all the arrays
|
||||||
|
///
|
||||||
|
#define EFI_ALL_MEMORY_ARRAY_OPERATION 0xffff
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//
|
//
|
||||||
// Debug Assert Data. This is part of Status Code Specification
|
// Debug Assert Data. This is part of Status Code Specification
|
||||||
//
|
//
|
||||||
|
@ -72,7 +343,6 @@ extern EFI_GUID gEfiStatusCodeDataTypeDebugGuid;
|
||||||
|
|
||||||
extern EFI_GUID gEfiStatusCodeDataTypeErrorGuid;
|
extern EFI_GUID gEfiStatusCodeDataTypeErrorGuid;
|
||||||
|
|
||||||
|
|
||||||
//
|
//
|
||||||
// Progress Code. User Defined Data Type Guid.
|
// Progress Code. User Defined Data Type Guid.
|
||||||
//
|
//
|
||||||
|
@ -81,4 +351,5 @@ extern EFI_GUID gEfiStatusCodeDataTypeErrorGuid;
|
||||||
|
|
||||||
extern EFI_GUID gEfiStatusCodeDataTypeProgressCodeGuid;
|
extern EFI_GUID gEfiStatusCodeDataTypeProgressCodeGuid;
|
||||||
|
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in New Issue