]> git.proxmox.com Git - mirror_edk2.git/blobdiff - UefiPayloadPkg/UefiPayloadEntry/UefiPayloadEntry.c
UefiPayloadPkg: Remove SystemTableInfo GUID.
[mirror_edk2.git] / UefiPayloadPkg / UefiPayloadEntry / UefiPayloadEntry.c
index 9efe01d0941deea388370b78e5206d69ad74f083..fee5cb90d5e45824666cdabc3bfe615ce515d312 100644 (file)
@@ -224,8 +224,6 @@ BuildHobFromBl (
   )\r
 {\r
   EFI_STATUS                       Status;\r
-  SYSTEM_TABLE_INFO                SysTableInfo;\r
-  SYSTEM_TABLE_INFO                *NewSysTableInfo;\r
   ACPI_BOARD_INFO                  *AcpiBoardInfo;\r
   EFI_PEI_GRAPHICS_INFO_HOB        GfxInfo;\r
   EFI_PEI_GRAPHICS_INFO_HOB        *NewGfxInfo;\r
@@ -274,18 +272,6 @@ BuildHobFromBl (
   }\r
 \r
 \r
-  //\r
-  // Create guid hob for system tables like acpi table and smbios table\r
-  //\r
-  Status = ParseSystemTable(&SysTableInfo);\r
-  ASSERT_EFI_ERROR (Status);\r
-  if (!EFI_ERROR (Status)) {\r
-    NewSysTableInfo = BuildGuidHob (&gUefiSystemTableInfoGuid, sizeof (SYSTEM_TABLE_INFO));\r
-    ASSERT (NewSysTableInfo != NULL);\r
-    CopyMem (NewSysTableInfo, &SysTableInfo, sizeof (SYSTEM_TABLE_INFO));\r
-    DEBUG ((DEBUG_INFO, "Detected Acpi Table at 0x%lx, length 0x%x\n", SysTableInfo.AcpiTableBase, SysTableInfo.AcpiTableSize));\r
-    DEBUG ((DEBUG_INFO, "Detected Smbios Table at 0x%lx, length 0x%x\n", SysTableInfo.SmbiosTableBase, SysTableInfo.SmbiosTableSize));\r
-  }\r
   //\r
   // Creat SmBios table Hob\r
   //\r
@@ -293,8 +279,11 @@ BuildHobFromBl (
   ASSERT (SmBiosTableHob != NULL);\r
   SmBiosTableHob->Header.Revision = UNIVERSAL_PAYLOAD_SMBIOS_TABLE_REVISION;\r
   SmBiosTableHob->Header.Length = sizeof (UNIVERSAL_PAYLOAD_SMBIOS_TABLE);\r
-  SmBiosTableHob->SmBiosEntryPoint = SysTableInfo.SmbiosTableBase;\r
   DEBUG ((DEBUG_INFO, "Create smbios table gUniversalPayloadSmbiosTableGuid guid hob\n"));\r
+  Status = ParseSmbiosTable(SmBiosTableHob);\r
+  if (!EFI_ERROR (Status)) {\r
+    DEBUG ((DEBUG_INFO, "Detected Smbios Table at 0x%lx\n", SmBiosTableHob->SmBiosEntryPoint));\r
+  }\r
 \r
   //\r
   // Creat ACPI table Hob\r
@@ -303,13 +292,16 @@ BuildHobFromBl (
   ASSERT (AcpiTableHob != NULL);\r
   AcpiTableHob->Header.Revision = UNIVERSAL_PAYLOAD_ACPI_TABLE_REVISION;\r
   AcpiTableHob->Header.Length = sizeof (UNIVERSAL_PAYLOAD_ACPI_TABLE);\r
-  AcpiTableHob->Rsdp = SysTableInfo.AcpiTableBase;\r
-  DEBUG ((DEBUG_INFO, "Create smbios table gUniversalPayloadAcpiTableGuid guid hob\n"));\r
+  DEBUG ((DEBUG_INFO, "Create ACPI table gUniversalPayloadAcpiTableGuid guid hob\n"));\r
+  Status = ParseAcpiTableInfo(AcpiTableHob);\r
+  if (!EFI_ERROR (Status)) {\r
+    DEBUG ((DEBUG_INFO, "Detected ACPI Table at 0x%lx\n", AcpiTableHob->Rsdp));\r
+  }\r
 \r
   //\r
   // Create guid hob for acpi board information\r
   //\r
-  AcpiBoardInfo = BuildHobFromAcpi (SysTableInfo.AcpiTableBase);\r
+  AcpiBoardInfo = BuildHobFromAcpi (AcpiTableHob->Rsdp);\r
   ASSERT (AcpiBoardInfo != NULL);\r
 \r
   //\r