summaryrefslogtreecommitdiff
path: root/DuetPkg/SmbiosGenDxe/SmbiosGen.h
diff options
context:
space:
mode:
authordavidhuang <davidhuang@6f19259b-4bc3-4df7-8a09-765794883524>2009-11-20 04:00:54 +0000
committerdavidhuang <davidhuang@6f19259b-4bc3-4df7-8a09-765794883524>2009-11-20 04:00:54 +0000
commit21020c7c8ba9c652a7ddb111b3ea898c3f511c05 (patch)
tree9ed0bfe2f6712c32f073819f3880010ffc54ce62 /DuetPkg/SmbiosGenDxe/SmbiosGen.h
parenta2bb197e806240386b5bbb8e77a7d4f2208d14ce (diff)
downloadedk2-platforms-21020c7c8ba9c652a7ddb111b3ea898c3f511c05.tar.xz
1. PI SMBIOS Checkin. Major change include:
1) Produce PI SMBIOS protocol in MdeModulePkg 2) Update all consumers (in CorePkgs and native platform pkgs) to consume SMBIOS protocol instead of DataHub 3) Pass ECC tool; Verify Nt32, Duet, Unix platform git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9454 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'DuetPkg/SmbiosGenDxe/SmbiosGen.h')
-rw-r--r--DuetPkg/SmbiosGenDxe/SmbiosGen.h87
1 files changed, 87 insertions, 0 deletions
diff --git a/DuetPkg/SmbiosGenDxe/SmbiosGen.h b/DuetPkg/SmbiosGenDxe/SmbiosGen.h
new file mode 100644
index 0000000000..45e6b24477
--- /dev/null
+++ b/DuetPkg/SmbiosGenDxe/SmbiosGen.h
@@ -0,0 +1,87 @@
+/** @file
+
+Copyright (c) 2009, Intel Corporation
+All rights reserved. This program and the accompanying materials
+are licensed and made available under the terms and conditions of the BSD License
+which accompanies this distribution. The full text of the license may be found at
+http://opensource.org/licenses/bsd-license.php
+
+THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
+WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
+
+Module Name:
+
+ DataHubGen.h
+
+Abstract:
+
+**/
+
+#ifndef _SMBIOS_GEN_H_
+#define _SMBIOS_GEN_H_
+
+#include <FrameworkDxe.h>
+#include <IndustryStandard/SmBios.h>
+
+#include <Guid/HobList.h>
+#include <Guid/SmBios.h>
+#include <Guid/DataHubRecords.h>
+
+#include <Protocol/Smbios.h>
+#include <Protocol/FrameworkHii.h>
+#include <Protocol/HiiDatabase.h>
+
+#include <Library/BaseLib.h>
+#include <Library/UefiLib.h>
+#include <Library/HobLib.h>
+#include <Library/UefiBootServicesTableLib.h>
+#include <Library/HiiLib.h>
+#include <Library/DebugLib.h>
+#include <Library/BaseMemoryLib.h>
+#include <Library/MemoryAllocationLib.h>
+
+#define PRODUCT_NAME L"DUET"
+#define PRODUCT_VERSION L"Beta"
+
+#define FIRMWARE_PRODUCT_NAME (PRODUCT_NAME L": ")
+#ifdef EFI32
+#if (EFI_SPECIFICATION_VERSION >= 0x00020000)
+#define FIRMWARE_BIOS_VERSIONE (PRODUCT_NAME L"(IA32.UEFI)" PRODUCT_VERSION L": ")
+#else
+#define FIRMWARE_BIOS_VERSIONE (PRODUCT_NAME L"(IA32.EFI)" PRODUCT_VERSION L": ")
+#endif
+#else // EFIX64
+#if (EFI_SPECIFICATION_VERSION >= 0x00020000)
+#define FIRMWARE_BIOS_VERSIONE (PRODUCT_NAME L"(X64.UEFI)" PRODUCT_VERSION L": ")
+#else
+#define FIRMWARE_BIOS_VERSIONE (PRODUCT_NAME L"(X64.EFI)" PRODUCT_VERSION L": ")
+#endif
+#endif
+
+SMBIOS_STRUCTURE_POINTER
+GetSmbiosTableFromType (
+ IN SMBIOS_TABLE_ENTRY_POINT *Smbios,
+ IN UINT8 Type,
+ IN UINTN Index
+ );
+
+CHAR8 *
+GetSmbiosString (
+ IN SMBIOS_STRUCTURE_POINTER SmbiosTable,
+ IN SMBIOS_TABLE_STRING String
+ );
+
+/**
+ Logs SMBIOS record.
+
+ @param Smbios Pointer to SMBIOS protocol instance.
+ @param Buffer Pointer to the data buffer.
+
+**/
+VOID
+LogSmbiosData (
+ IN EFI_SMBIOS_PROTOCOL *Smbios,
+ IN UINT8 *Buffer
+ );
+
+#endif