--- /dev/null
+/** @file\r
+ GUIDs used to locate the SMBIOS tables in the EFI 1.0 system table.\r
+\r
+ This GUID in the system table is the only legal way to search for and \r
+ locate the SMBIOS tables. Do not search the 0xF0000 segment to find SMBIOS\r
+ tables.\r
+\r
+ Copyright (c) 2006, Intel Corporation \r
+ All rights reserved. This program and the accompanying materials \r
+ are licensed and made available under the terms and conditions of the BSD License \r
+ which accompanies this distribution. The full text of the license may be found at \r
+ http://opensource.org/licenses/bsd-license.php \r
+\r
+ THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r
+ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. \r
+\r
+ Module Name: SmBios.h\r
+\r
+ @par Revision Reference:\r
+ GUIDs defined in UEFI 2.0 spec.\r
+\r
+**/\r
+\r
+#ifndef __SMBIOS_GUID_H__\r
+#define __SMBIOS_GUID_H__\r
+\r
+#define EFI_SMBIOS_TABLE_GUID \\r
+ { \\r
+ 0xeb9d2d31, 0x2d88, 0x11d3, {0x9a, 0x16, 0x0, 0x90, 0x27, 0x3f, 0xc1, 0x4d } \\r
+ }\r
+\r
+#define SMBIOS_TABLE_GUID EFI_SMBIOS_TABLE_GUID\r
+\r
+//\r
+// Smbios Table Entry Point Structure\r
+//\r
+#pragma pack(1)\r
+typedef struct {\r
+ UINT8 AnchorString[4];\r
+ UINT8 EntryPointStructureChecksum;\r
+ UINT8 EntryPointLength;\r
+ UINT8 MajorVersion;\r
+ UINT8 MinorVersion;\r
+ UINT16 MaxStructureSize;\r
+ UINT8 EntryPointRevision;\r
+ UINT8 FormattedArea[5];\r
+ UINT8 IntermediateAnchorString[5];\r
+ UINT8 IntermediateChecksum;\r
+ UINT16 TableLength;\r
+ UINT32 TableAddress;\r
+ UINT16 NumberOfSmbiosStructures;\r
+ UINT8 SmbiosBcdRevision;\r
+} SMBIOS_TABLE_ENTRY_POINT;\r
+\r
+//\r
+// The Smbios structure header\r
+//\r
+typedef struct {\r
+ UINT8 Type;\r
+ UINT8 Length;\r
+ UINT16 Handle;\r
+} SMBIOS_STRUCTURE;\r
+\r
+#pragma pack()\r
+\r
+extern EFI_GUID gEfiSmbiosTableGuid;\r
+\r
+#endif\r