]> xenbits.xensource.com Git - ovmf.git/commitdiff
MdePkg/IndustryStandard: Add SMBIOS anchor string & length defines.
authorGiri Mudusuru <girim@apple.com>
Fri, 5 May 2023 00:17:09 +0000 (08:17 +0800)
committermergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Fri, 12 May 2023 05:09:14 +0000 (05:09 +0000)
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3805

Add SMBIOS spec defined anchor strings & length defines.

 - '_SM_' chapter 5.2.1 SMBIOS 2.1 (32-bit) Entry Point
 - '_SM3_' chapter 5.2.2 SMBIOS 3.0 (64-bit) Entry Point

Changes from v1 to v2:
 - Replace non-ASCII characters

Cc: Michael D Kinney <michael.d.kinney@intel.com>
Cc: Liming Gao <gaoliming@byosoft.com.cn>
Cc: Zhiguang Liu <zhiguang.liu@intel.com>
Cc: Andrew Fish <afish@apple.com>
Signed-off-by: Giri Mudusuru <girim@apple.com>
Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn>
MdePkg/Include/IndustryStandard/SmBios.h

index 9cbdec1182009cd6085c9f8c4d1ec1e35e344c8e..89985bb4186b9e6258e31c3d147e997ad727ae58 100644 (file)
@@ -48,6 +48,24 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 //\r
 #define SMBIOS_3_0_TABLE_MAX_LENGTH  0xFFFFFFFF\r
 \r
+///\r
+/// Reference SMBIOS 3.4, chapter 5.2.1 SMBIOS 2.1 (32-bit) Entry Point\r
+/// Table 1 - SMBIOS 2.1 (32-bit) Entry Point structure, offset 00h\r
+/// _SM_, specified as four ASCII characters (5F 53 4D 5F).\r
+///@{\r
+#define SMBIOS_ANCHOR_STRING         "_SM_"\r
+#define SMBIOS_ANCHOR_STRING_LENGTH  4\r
+///@}\r
+\r
+///\r
+/// Reference SMBIOS 3.4, chapter 5.2.2 SMBIOS 3.0 (64-bit) Entry Point\r
+/// Table 2 - SMBIOS 3.0 (64-bit) Entry Point structure, offset 00h\r
+/// _SM3_, specified as five ASCII characters (5F 53 4D 33 5F).\r
+///@{\r
+#define SMBIOS_3_0_ANCHOR_STRING         "_SM3_"\r
+#define SMBIOS_3_0_ANCHOR_STRING_LENGTH  5\r
+///@}\r
+\r
 //\r
 // SMBIOS type macros which is according to SMBIOS 3.3.0 specification.\r
 //\r
@@ -138,7 +156,7 @@ typedef UINT16 SMBIOS_HANDLE;
 ///\r
 #pragma pack(1)\r
 typedef struct {\r
-  UINT8     AnchorString[4];\r
+  UINT8     AnchorString[SMBIOS_ANCHOR_STRING_LENGTH];\r
   UINT8     EntryPointStructureChecksum;\r
   UINT8     EntryPointLength;\r
   UINT8     MajorVersion;\r
@@ -155,7 +173,7 @@ typedef struct {
 } SMBIOS_TABLE_ENTRY_POINT;\r
 \r
 typedef struct {\r
-  UINT8     AnchorString[5];\r
+  UINT8     AnchorString[SMBIOS_3_0_ANCHOR_STRING_LENGTH];\r
   UINT8     EntryPointStructureChecksum;\r
   UINT8     EntryPointLength;\r
   UINT8     MajorVersion;\r