]> git.proxmox.com Git - mirror_edk2.git/blobdiff - UefiPayloadPkg/BlSupportDxe/BlSupportDxe.c
UefiPayloadPkg/Pci: Use the PCIE Base Addr stored in AcpiBoardInfo HOB
[mirror_edk2.git] / UefiPayloadPkg / BlSupportDxe / BlSupportDxe.c
index 28dfc8fc5545c8754c8a334a325549bc25f2df05..a3974dcc02f8c0d25b80101f32f545e57544c5ad 100644 (file)
@@ -2,7 +2,7 @@
   This driver will report some MMIO/IO resources to dxe core, extract smbios and acpi\r
   tables from bootloader.\r
 \r
-  Copyright (c) 2014 - 2019, Intel Corporation. All rights reserved.<BR>\r
+  Copyright (c) 2014 - 2020, Intel Corporation. All rights reserved.<BR>\r
   SPDX-License-Identifier: BSD-2-Clause-Patent\r
 \r
 **/\r
@@ -101,6 +101,7 @@ BlDxeEntryPoint (
   EFI_HOB_GUID_TYPE          *GuidHob;\r
   SYSTEM_TABLE_INFO          *SystemTableInfo;\r
   EFI_PEI_GRAPHICS_INFO_HOB  *GfxInfo;\r
+  ACPI_BOARD_INFO            *AcpiBoardInfo;\r
 \r
   Status = EFI_SUCCESS;\r
   //\r
@@ -153,6 +154,16 @@ BlDxeEntryPoint (
     ASSERT_EFI_ERROR (Status);\r
   }\r
 \r
+  //\r
+  // Set PcdPciExpressBaseAddress by HOB info\r
+  //\r
+  GuidHob = GetFirstGuidHob (&gUefiAcpiBoardInfoGuid);\r
+  if (GuidHob != NULL) {\r
+    AcpiBoardInfo = (ACPI_BOARD_INFO *)GET_GUID_HOB_DATA (GuidHob);\r
+    Status = PcdSet64S (PcdPciExpressBaseAddress, AcpiBoardInfo->PcieBaseAddress);\r
+    ASSERT_EFI_ERROR (Status);\r
+  }\r
+\r
   return EFI_SUCCESS;\r
 }\r
 \r