]> git.proxmox.com Git - mirror_edk2.git/blobdiff - DuetPkg/DataHubGenDxe/DataHubGen.c
Move to SmmServicesTableLib to IA32, x64 arch sub section to align with SmmLib
[mirror_edk2.git] / DuetPkg / DataHubGenDxe / DataHubGen.c
index dcb42bb96b7a817b5439b321ac4c0e995b31807c..5d1354a71d6bb9c422c04c9d9fb58e44175f8bd3 100644 (file)
@@ -1,6 +1,6 @@
 /** @file\r
 \r
-Copyright (c) 2006 - 2007, Intel Corporation                                                         \r
+Copyright (c) 2006 - 2010, 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
@@ -35,8 +35,7 @@ GetSmbiosTablesFromHob (
   //\r
   // Get Hob List\r
   //\r
-  GuidHob.Raw = GetHobList ();\r
-  GuidHob.Raw = GetNextGuidHob (&gEfiSmbiosTableGuid, GuidHob.Raw);\r
+  GuidHob.Raw = GetFirstGuidHob (&gEfiSmbiosTableGuid);\r
   if (GuidHob.Raw != NULL) {\r
     Table = GET_GUID_HOB_DATA (GuidHob.Guid);\r
     if (Table != NULL) {\r
@@ -91,11 +90,12 @@ InstallProcessorDataHub (
   Status = gDataHub->LogData (\r
                        gDataHub,\r
                        &gEfiProcessorSubClassGuid,\r
-                       &gEfiMiscProducerGuid,\r
+                       &gEfiCallerIdGuid,\r
                        EFI_DATA_RECORD_CLASS_DATA,\r
                        &DataRecord,\r
                        sizeof (DataRecord.DataRecordHeader) + sizeof (DataRecord.VariableRecord.ProcessorCoreFrequency)\r
                        );\r
+  ASSERT_EFI_ERROR (Status);\r
   //\r
   // Record Type 3\r
   //\r
@@ -104,9 +104,8 @@ InstallProcessorDataHub (
   ASSERT (UString != NULL);\r
   AsciiStrToUnicodeStr (AString, UString);\r
 \r
-  Status = HiiLibNewString (gStringHandle, &Token, UString);\r
-\r
-  if (EFI_ERROR (Status)) {\r
+  Token = HiiSetString (gStringHandle, 0, UString, NULL);\r
+  if (Token == 0) {\r
     gBS->FreePool (UString);\r
     return ;\r
   }\r
@@ -118,12 +117,12 @@ InstallProcessorDataHub (
   Status = gDataHub->LogData (\r
                        gDataHub,\r
                        &gEfiProcessorSubClassGuid,\r
-                       &gEfiMiscProducerGuid,\r
+                       &gEfiCallerIdGuid,\r
                        EFI_DATA_RECORD_CLASS_DATA,\r
                        &DataRecord,\r
                        sizeof (DataRecord.DataRecordHeader) + sizeof (DataRecord.VariableRecord.ProcessorVersion)\r
                        );\r
-\r
+  ASSERT_EFI_ERROR (Status);\r
   return ;\r
 }\r
 \r
@@ -148,7 +147,6 @@ InstallMemoryDataHub (
   IN VOID                  *Smbios\r
   )\r
 {\r
-  EFI_STATUS                        Status;\r
   SMBIOS_STRUCTURE_POINTER          SmbiosTable;\r
   EFI_MEMORY_SUBCLASS_DRIVER_DATA   DataRecord;\r
 \r
@@ -173,15 +171,15 @@ InstallMemoryDataHub (
   DataRecord.Record.ArrayStartAddress.MemoryArrayStartAddress = LShiftU64(SmbiosTable.Type19->StartingAddress, 10);\r
   DataRecord.Record.ArrayStartAddress.MemoryArrayEndAddress = LShiftU64((UINT64) SmbiosTable.Type19->EndingAddress + 1, 10) - 1;\r
   \r
-  DataRecord.Record.ArrayStartAddress.PhysicalMemoryArrayLink.ProducerName = gEfiMemoryProducerGuid;\r
+  CopyGuid (&DataRecord.Record.ArrayStartAddress.PhysicalMemoryArrayLink.ProducerName, &gEfiCallerIdGuid);\r
   DataRecord.Record.ArrayStartAddress.PhysicalMemoryArrayLink.Instance = 0;\r
   DataRecord.Record.ArrayStartAddress.PhysicalMemoryArrayLink.SubInstance = EFI_SUBCLASS_INSTANCE_NON_APPLICABLE;\r
   DataRecord.Record.ArrayStartAddress.MemoryArrayPartitionWidth = (UINT16)(SmbiosTable.Type19->PartitionWidth); \r
 \r
-  Status = gDataHub->LogData (\r
+  gDataHub->LogData (\r
                        gDataHub,\r
                        &gEfiMemorySubClassGuid,\r
-                       &gEfiMiscProducerGuid,\r
+                       &gEfiCallerIdGuid,\r
                        EFI_DATA_RECORD_CLASS_DATA,\r
                        &DataRecord,\r
                        sizeof (DataRecord.Header) + sizeof (DataRecord.Record.ArrayStartAddress)\r
@@ -233,9 +231,8 @@ InstallMiscDataHub (
   CopyMem (UString, FIRMWARE_BIOS_VERSIONE, sizeof(FIRMWARE_BIOS_VERSIONE));\r
   AsciiStrToUnicodeStr (AString, UString + sizeof(FIRMWARE_BIOS_VERSIONE) / sizeof(CHAR16) - 1);\r
 \r
-  Status = HiiLibNewString (gStringHandle, &Token, UString);\r
-\r
-  if (EFI_ERROR (Status)) {\r
+  Token = HiiSetString (gStringHandle, 0, UString, NULL);\r
+  if (Token == 0) {\r
     gBS->FreePool (UString);\r
     return ;\r
   }\r
@@ -258,11 +255,12 @@ InstallMiscDataHub (
   Status = gDataHub->LogData (\r
                        gDataHub,\r
                        &gEfiMiscSubClassGuid,\r
-                       &gEfiMiscProducerGuid,\r
+                       &gEfiCallerIdGuid,\r
                        EFI_DATA_RECORD_CLASS_DATA,\r
                        &DataRecord,\r
                        sizeof (DataRecord.Header) + sizeof (DataRecord.Record.MiscBiosVendor)\r
                        );\r
+  ASSERT_EFI_ERROR (Status);\r
 \r
   //\r
   // System information (TYPE 1)\r
@@ -282,9 +280,8 @@ InstallMiscDataHub (
   CopyMem (UString, FIRMWARE_PRODUCT_NAME, sizeof(FIRMWARE_PRODUCT_NAME));\r
   AsciiStrToUnicodeStr (AString, UString + sizeof(FIRMWARE_PRODUCT_NAME) / sizeof(CHAR16) - 1);\r
 \r
-  Status = HiiLibNewString (gStringHandle, &Token, UString);\r
-\r
-  if (EFI_ERROR (Status)) {\r
+  Token = HiiSetString (gStringHandle, 0, UString, NULL);\r
+  if (Token == 0) {\r
     gBS->FreePool (UString);\r
     return ;\r
   }\r
@@ -296,18 +293,19 @@ InstallMiscDataHub (
   DataRecord.Record.MiscSystemManufacturer.SystemVersion  = 0;\r
   DataRecord.Record.MiscSystemManufacturer.SystemSerialNumber  = 0;\r
 //  DataRecord.Record.MiscSystemManufacturer.SystemUuid  = {0};\r
-  DataRecord.Record.MiscSystemManufacturer.SystemWakeupType  = 0;\r
+  DataRecord.Record.MiscSystemManufacturer.SystemWakeupType  = EfiSystemWakeupTypeReserved;\r
   DataRecord.Record.MiscSystemManufacturer.SystemSKUNumber  = 0;\r
   DataRecord.Record.MiscSystemManufacturer.SystemFamily  = 0;\r
 \r
   Status = gDataHub->LogData (\r
                        gDataHub,\r
                        &gEfiMiscSubClassGuid,\r
-                       &gEfiMiscProducerGuid,\r
+                       &gEfiCallerIdGuid,\r
                        EFI_DATA_RECORD_CLASS_DATA,\r
                        &DataRecord,\r
                        sizeof (DataRecord.Header) + sizeof (DataRecord.Record.MiscSystemManufacturer)\r
                        );\r
+  ASSERT_EFI_ERROR (Status);\r
 \r
   return ;\r
 }\r
@@ -339,14 +337,20 @@ DataHubGenEntrypoint (
   Status = gBS->LocateProtocol (\r
                   &gEfiHiiDatabaseProtocolGuid,\r
                   NULL,\r
-                  &gHiiDatabase\r
+                  (VOID**)&gHiiDatabase\r
                   );\r
 \r
   if (EFI_ERROR (Status)) {\r
     return Status;\r
   }\r
   \r
-  HiiLibAddPackages (1, &gEfiMiscProducerGuid, NULL, &gStringHandle, DataHubGenDxeStrings);\r
+  gStringHandle = HiiAddPackages (\r
+                    &gEfiCallerIdGuid,\r
+                    NULL,\r
+                    DataHubGenDxeStrings,\r
+                    NULL\r
+                    );\r
+  ASSERT (gStringHandle != NULL);\r
 \r
   InstallProcessorDataHub (Smbios);\r
   InstallCacheDataHub     (Smbios);\r