2009-01-19 08:00:28 +01:00
|
|
|
/** @file
|
2007-07-23 09:06:23 +02:00
|
|
|
GUID used to identify status code records HOB that originate from the PEI status code
|
|
|
|
|
2009-07-04 00:40:21 +02:00
|
|
|
Copyright (c) 2006 - 2009, 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.
|
2007-06-26 10:14:44 +02:00
|
|
|
|
2007-07-23 09:06:23 +02:00
|
|
|
**/
|
2007-06-26 10:14:44 +02:00
|
|
|
|
|
|
|
#ifndef __MEMORY_STATUS_CODE_RECORD_H__
|
|
|
|
#define __MEMORY_STATUS_CODE_RECORD_H__
|
|
|
|
|
2009-07-04 00:40:21 +02:00
|
|
|
///
|
|
|
|
/// Global ID used to identify GUIDed HOBs that start with a structure of type
|
2009-07-09 14:37:01 +02:00
|
|
|
/// MEMORY_STATUSCODE_PACKET_HEADER followed by an array of structures of type
|
2009-07-04 00:40:21 +02:00
|
|
|
/// MEMORY_STATUSCODE_RECORD. These GUIDed HOBs record all the information
|
|
|
|
/// passed into the ReportStatusCode() service of PEI Services Table.
|
|
|
|
///
|
|
|
|
/// <pre>
|
|
|
|
/// Memory status code records packet structure :
|
|
|
|
/// +---------------+----------+----------+-----+----------+-----+----------+
|
|
|
|
/// | Packet Header | Record 1 | Record 2 | ... + Record n | ... | Record m |
|
|
|
|
/// +---------------+----------+----------+-----+----------+-----+----------+
|
|
|
|
/// ^ ^ ^
|
|
|
|
/// +--------- RecordIndex -----------+ |
|
|
|
|
/// +---------------- MaxRecordsNumber----------------------+
|
|
|
|
/// </pre>
|
|
|
|
///
|
2007-06-26 10:14:44 +02:00
|
|
|
#define MEMORY_STATUS_CODE_RECORD_GUID \
|
|
|
|
{ \
|
|
|
|
0x60cc026, 0x4c0d, 0x4dda, {0x8f, 0x41, 0x59, 0x5f, 0xef, 0x0, 0xa5, 0x2} \
|
|
|
|
}
|
|
|
|
|
2009-07-04 00:40:21 +02:00
|
|
|
///
|
|
|
|
/// A header structure that is followed by an array of records that contain the
|
|
|
|
/// parameters passed into the ReportStatusCode() service in the PEI Services Table.
|
|
|
|
///
|
2007-06-26 10:14:44 +02:00
|
|
|
typedef struct {
|
2009-07-04 00:40:21 +02:00
|
|
|
///
|
|
|
|
/// Index of the packet
|
|
|
|
///
|
|
|
|
UINT16 PacketIndex;
|
|
|
|
///
|
|
|
|
/// The number of active records in the packet
|
|
|
|
///
|
|
|
|
UINT16 RecordIndex;
|
|
|
|
///
|
|
|
|
/// The maximum number of records that the packet can store
|
|
|
|
///
|
|
|
|
UINT32 MaxRecordsNumber;
|
2007-06-26 10:14:44 +02:00
|
|
|
} MEMORY_STATUSCODE_PACKET_HEADER;
|
|
|
|
|
2009-07-04 00:40:21 +02:00
|
|
|
///
|
|
|
|
/// A structure that contains the parameters passed into the ReportStatusCode()
|
|
|
|
/// service in the PEI Services Table.
|
|
|
|
///
|
2007-06-26 10:14:44 +02:00
|
|
|
typedef struct {
|
2009-06-12 11:02:15 +02:00
|
|
|
///
|
|
|
|
/// Status Code type to be reported.
|
|
|
|
///
|
2009-07-04 00:40:21 +02:00
|
|
|
EFI_STATUS_CODE_TYPE CodeType;
|
2009-06-12 11:02:15 +02:00
|
|
|
|
|
|
|
///
|
2009-07-09 14:37:01 +02:00
|
|
|
/// An operation, plus value information about the class and subclass, used to
|
|
|
|
/// classify the hardware and software entity.
|
2009-06-12 11:02:15 +02:00
|
|
|
///
|
2009-07-04 00:40:21 +02:00
|
|
|
EFI_STATUS_CODE_VALUE Value;
|
2009-06-12 11:02:15 +02:00
|
|
|
|
|
|
|
///
|
|
|
|
/// The enumeration of a hardware or software entity within
|
|
|
|
/// the system. Valid instance numbers start with 1
|
|
|
|
///
|
2009-07-04 00:40:21 +02:00
|
|
|
UINT32 Instance;
|
2007-06-26 10:14:44 +02:00
|
|
|
} MEMORY_STATUSCODE_RECORD;
|
|
|
|
|
|
|
|
extern EFI_GUID gMemoryStatusCodeRecordGuid;
|
|
|
|
|
|
|
|
#endif
|