]> git.proxmox.com Git - mirror_edk2.git/blame - MdePkg/Include/IndustryStandard/IpmiFruInformationStorage.h
MdePkg: TpmPtp: Add CapCRBIdleBypass definition
[mirror_edk2.git] / MdePkg / Include / IndustryStandard / IpmiFruInformationStorage.h
CommitLineData
25517f7c
HW
1/** @file\r
2 IPMI Platform Management FRU Information Storage Definitions\r
3\r
4 This file contains the definitions for:\r
5 Common Header Format (Chapter 8)\r
6 MultiRecord Header (Section 16.1)\r
7\r
8 Copyright (c) 2018, Intel Corporation. All rights reserved.<BR>\r
9 This program and the accompanying materials\r
10 are licensed and made available under the terms and conditions of the BSD License\r
11 which accompanies this distribution. The full text of the license may be found at\r
12 http://opensource.org/licenses/bsd-license.php\r
13\r
14 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
15 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
16\r
17 @par Revision Reference:\r
18 - IPMI Platform Management FRU Information Storage Definition v1.0 Revision\r
19 1.3, Dated March 24, 2015.\r
20 https://www.intel.com/content/dam/www/public/us/en/documents/specification-updates/ipmi-platform-mgt-fru-info-storage-def-v1-0-rev-1-3-spec-update.pdf\r
21**/\r
22\r
23#ifndef _IPMI_FRU_INFORMATION_STORAGE_H_\r
24#define _IPMI_FRU_INFORMATION_STORAGE_H_\r
25\r
26#pragma pack(1)\r
27\r
28//\r
aeb6f576 29// Structure definitions for FRU Common Header\r
25517f7c 30//\r
aeb6f576
HW
31typedef union {\r
32 ///\r
33 /// Individual bit fields\r
34 ///\r
35 struct {\r
36 UINT8 FormatVersionNumber:4;\r
37 UINT8 Reserved:4;\r
38 } Bits;\r
39 ///\r
40 /// All bit fields as a 8-bit value\r
41 ///\r
42 UINT8 Uint8;\r
43} IPMI_FRU_COMMON_HEADER_FORMAT_VERSION;\r
44\r
25517f7c 45typedef struct {\r
aeb6f576
HW
46 IPMI_FRU_COMMON_HEADER_FORMAT_VERSION FormatVersion;\r
47 UINT8 InternalUseStartingOffset;\r
48 UINT8 ChassisInfoStartingOffset;\r
49 UINT8 BoardAreaStartingOffset;\r
50 UINT8 ProductInfoStartingOffset;\r
51 UINT8 MultiRecInfoStartingOffset;\r
52 UINT8 Pad;\r
53 UINT8 Checksum;\r
25517f7c
HW
54} IPMI_FRU_COMMON_HEADER;\r
55\r
56//\r
57// Structure definition for FRU MultiRecord Header\r
58//\r
aeb6f576
HW
59typedef union {\r
60 ///\r
61 /// Individual bit fields\r
62 ///\r
63 struct {\r
64 UINT8 RecordFormatVersion:4;\r
65 UINT8 Reserved:3;\r
66 UINT8 EndofList:1;\r
67 } Bits;\r
68 ///\r
69 /// All bit fields as a 8-bit value\r
70 ///\r
71 UINT8 Uint8;\r
72} IPMI_FRU_MULTI_RECORD_HEADER_FORMAT_VERSION;\r
73\r
25517f7c 74typedef struct {\r
aeb6f576
HW
75 UINT8 RecordTypeId;\r
76 IPMI_FRU_MULTI_RECORD_HEADER_FORMAT_VERSION FormatVersion;\r
77 UINT8 RecordLength;\r
78 UINT8 RecordChecksum;\r
79 UINT8 HeaderChecksum;\r
25517f7c
HW
80} IPMI_FRU_MULTI_RECORD_HEADER;\r
81\r
82//\r
83// Structure definition for System UUID Subrecord with checksum.\r
84//\r
85typedef struct {\r
86 UINT8 RecordCheckSum;\r
87 UINT8 SubRecordId;\r
88 EFI_GUID Uuid;\r
89} IPMI_SYSTEM_UUID_SUB_RECORD_WITH_CHECKSUM;\r
90\r
91#pragma pack()\r
92#endif\r