]> git.proxmox.com Git - mirror_edk2.git/commitdiff
OvmfPkg/PlatformPei: Query Host Bridge DID only once
authorPaulo Alcantara <pcacjr@zytor.com>
Tue, 9 Jun 2015 15:28:09 +0000 (15:28 +0000)
committerjljusten <jljusten@Edk2>
Tue, 9 Jun 2015 15:28:09 +0000 (15:28 +0000)
Make HostBridgeDevId global so MemMapInitialization() can also use it to
conditionally add RCRB MMIO address to HOB.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Paulo Alcantara <pcacjr@zytor.com>
Reviewed-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17600 6f19259b-4bc3-4df7-8a09-765794883524

OvmfPkg/PlatformPei/Platform.c

index 1126c6529ae2aeea4129379599b25bc39d474a95..0e41d305c7dcf9c6e6e6e8d04edcfabf1ee57b77 100644 (file)
@@ -61,6 +61,8 @@ EFI_PEI_PPI_DESCRIPTOR   mPpiBootMode[] = {
 };\r
 \r
 \r
+UINT16 mHostBridgeDevId;\r
+\r
 EFI_BOOT_MODE mBootMode = BOOT_WITH_FULL_CONFIGURATION;\r
 \r
 BOOLEAN mS3Supported = FALSE;\r
@@ -229,7 +231,6 @@ MiscInitialization (
   VOID\r
   )\r
 {\r
-  UINT16 HostBridgeDevId;\r
   UINTN  PmCmd;\r
   UINTN  Pmba;\r
   UINTN  AcpiCtlReg;\r
@@ -246,10 +247,9 @@ MiscInitialization (
   BuildCpuHob (36, 16);\r
 \r
   //\r
-  // Query Host Bridge DID to determine platform type and save to PCD\r
+  // Determine platform type and save Host Bridge DID to PCD\r
   //\r
-  HostBridgeDevId = PciRead16 (OVMF_HOSTBRIDGE_DID);\r
-  switch (HostBridgeDevId) {\r
+  switch (mHostBridgeDevId) {\r
     case INTEL_82441_DEVICE_ID:\r
       PmCmd      = POWER_MGMT_REGISTER_PIIX4 (PCI_COMMAND_OFFSET);\r
       Pmba       = POWER_MGMT_REGISTER_PIIX4 (PIIX4_PMBA);\r
@@ -264,11 +264,11 @@ MiscInitialization (
       break;\r
     default:\r
       DEBUG ((EFI_D_ERROR, "%a: Unknown Host Bridge Device ID: 0x%04x\n",\r
-        __FUNCTION__, HostBridgeDevId));\r
+        __FUNCTION__, mHostBridgeDevId));\r
       ASSERT (FALSE);\r
       return;\r
   }\r
-  PcdSet16 (PcdOvmfHostBridgePciDevId, HostBridgeDevId);\r
+  PcdSet16 (PcdOvmfHostBridgePciDevId, mHostBridgeDevId);\r
 \r
   //\r
   // If the appropriate IOspace enable bit is set, assume the ACPI PMBA\r
@@ -400,6 +400,11 @@ InitializePlatform (
     InitializeXen ();\r
   }\r
 \r
+  //\r
+  // Query Host Bridge DID\r
+  //\r
+  mHostBridgeDevId = PciRead16 (OVMF_HOSTBRIDGE_DID);\r
+\r
   if (mBootMode != BOOT_ON_S3_RESUME) {\r
     ReserveEmuVariableNvStore ();\r
 \r