[edk2-devel] [edk2-platforms] [PATCH 1/5] BoardModulePkg: Add bios info HOB
Agyeman, Prince
prince.agyeman at intel.com
Thu Oct 3 21:12:55 UTC 2019
Added gBiosInfoGuid to be used to
publish BIOS information HOB which
is needed in FIT generation
Also added the Bios Info header
file BiosInfo.h
Cc: Ankit Sinha <ankit.sinha at intel.com>
Cc: Nate DeSimone <nathaniel.l.desimone at intel.com>
Cc: Kubacki Michael A <michael.a.kubacki at intel.com>
Signed-off-by: Prince Agyeman <prince.agyeman at intel.com>
---
.../Intel/BoardModulePkg/BoardModulePkg.dec | 3 +
.../BoardModulePkg/Include/Library/BiosInfo.h | 62 +++++++++++++++++++
2 files changed, 65 insertions(+)
create mode 100644 Platform/Intel/BoardModulePkg/Include/Library/BiosInfo.h
diff --git a/Platform/Intel/BoardModulePkg/BoardModulePkg.dec b/Platform/Intel/BoardModulePkg/BoardModulePkg.dec
index 6f13945ca8..035427b2f5 100644
--- a/Platform/Intel/BoardModulePkg/BoardModulePkg.dec
+++ b/Platform/Intel/BoardModulePkg/BoardModulePkg.dec
@@ -36,3 +36,6 @@
[Guids]
## Include Include/Guid/BiosId.h
gBiosIdGuid = { 0xC3E36D09, 0x8294, 0x4b97, { 0xA8, 0x57, 0xD5, 0x28, 0x8F, 0xE3, 0x3E, 0x28 } }
+
+ ## GUID to publish BIOS information HOB
+ gBiosInfoGuid = { 0x09d0d15c, 0xe9f0, 0x4dfc, {0x9e, 0x0b, 0x39, 0x33, 0x1f, 0xca, 0x66, 0x85} }
diff --git a/Platform/Intel/BoardModulePkg/Include/Library/BiosInfo.h b/Platform/Intel/BoardModulePkg/Include/Library/BiosInfo.h
new file mode 100644
index 0000000000..bba1c07bff
--- /dev/null
+++ b/Platform/Intel/BoardModulePkg/Include/Library/BiosInfo.h
@@ -0,0 +1,62 @@
+/** @file
+
+ Driver for BIOS Info support.
+
+ Copyright (c) 2019, Intel Corporation. All rights reserved.<BR>
+ SPDX-License-Identifier: BSD-2-Clause-Patent
+**/
+
+#ifndef _BIOS_INFO_H_
+#define _BIOS_INFO_H_
+
+//
+// BIOS INFO data structure
+// This is self contained data structure for BIOS info for TXT
+//
+#pragma pack (1)
+#define BIOS_INFO_SIGNATURE SIGNATURE_64 ('$', 'B', 'I', 'O', 'S', 'I', 'F', '$')
+typedef struct {
+ UINT64 Signature;
+ UINT32 EntryCount;
+ UINT32 Reserved;
+//BIOS_INFO_STRUCT Struct[EntryCount];
+} BIOS_INFO_HEADER;
+
+//
+// BIOS_INFO_STRUCT attributes
+// bits[0:3] means general attributes
+// bits[4:7] means type specific attributes
+//
+#define BIOS_INFO_STRUCT_ATTRIBUTE_GENERAL_EXCLUDE_FROM_FIT 0x01
+#define BIOS_INFO_STRUCT_ATTRIBUTE_MICROCODE_WHOLE_REGION 0x10
+#define BIOS_INFO_STRUCT_ATTRIBUTE_BIOS_POST_IBB 0x10
+#define BIOS_INFO_STRUCT_ATTRIBUTE_BIOS_NON_IBB 0x20
+
+typedef struct {
+ //
+ // FitTable entry type
+ //
+ UINT8 Type;
+ //
+ // BIOS_INFO_STRUCT attributes
+ //
+ UINT8 Attributes;
+ //
+ // FitTable entry version
+ //
+ UINT16 Version;
+ //
+ // FitTable entry real size
+ //
+ UINT32 Size;
+ //
+ // FitTable entry address
+ //
+ UINT64 Address;
+} BIOS_INFO_STRUCT;
+
+extern EFI_GUID gBiosInfoGuid;
+
+#pragma pack ()
+
+#endif
--
2.19.1.windows.1
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#48455): https://edk2.groups.io/g/devel/message/48455
Mute This Topic: https://groups.io/mt/34386697/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-
More information about the edk2-devel-archive
mailing list