7a6bd06d109b8961d8a458085c9c53afe81d26a3
[mirror_edk2.git] / IntelFrameworkModulePkg / Include / Guid / MemoryStatusCodeRecord.h
1 /**@file
2 GUID used to identify status code records HOB that originate from the PEI status code
3
4 Copyright (c) 2006, Intel Corporation
5 All rights reserved. This program and the accompanying materials
6 are licensed and made available under the terms and conditions of the BSD License
7 which accompanies this distribution. The full text of the license may be found at
8 http://opensource.org/licenses/bsd-license.php
9
10 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
11 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
12
13 **/
14
15 #ifndef __MEMORY_STATUS_CODE_RECORD_H__
16 #define __MEMORY_STATUS_CODE_RECORD_H__
17
18 #define MEMORY_STATUS_CODE_RECORD_GUID \
19 { \
20 0x60cc026, 0x4c0d, 0x4dda, {0x8f, 0x41, 0x59, 0x5f, 0xef, 0x0, 0xa5, 0x2} \
21 }
22
23 /**
24 Memory status code records packet structure :
25 +---------------+----------+----------+-----+----------+-----+----------+
26 | Packet Header | Record 1 | Record 2 | ... + Record n | ... | Record m |
27 +---------------+----------+----------+-----+----------+-----+----------+
28 ^ ^ ^
29 +--------- RecordIndex -----------+ |
30 +---------------- MaxRecordsNumber----------------------+
31 **/
32 typedef struct {
33 UINT16 PacketIndex; // Index of the Packet.
34 UINT16 RecordIndex; // Index of record in the packet.
35 UINT32 MaxRecordsNumber; // Max number of records in the packet.
36 } MEMORY_STATUSCODE_PACKET_HEADER;
37
38 typedef struct {
39 EFI_STATUS_CODE_TYPE CodeType;
40 EFI_STATUS_CODE_VALUE Value;
41 UINT32 Instance;
42 } MEMORY_STATUSCODE_RECORD;
43
44
45 extern EFI_GUID gMemoryStatusCodeRecordGuid;
46
47 #endif