summaryrefslogtreecommitdiff
path: root/OvmfPkg/Library/PciHostBridgeLib/PciHostBridgeLib.c
diff options
context:
space:
mode:
authorRuiyu Ni <ruiyu.ni@intel.com>2016-05-10 11:14:45 +0800
committerRuiyu Ni <ruiyu.ni@intel.com>2016-05-11 08:53:36 +0800
commit49effaf26ec952905bc7710587c6a58437864cdf (patch)
treeaa1611535b9387a8fa73859702d89a74ec2e6601 /OvmfPkg/Library/PciHostBridgeLib/PciHostBridgeLib.c
parentc0a2591b30489ead14ada91908646605929b62b2 (diff)
downloadedk2-platforms-49effaf26ec952905bc7710587c6a58437864cdf.tar.xz
OvmfPkg/PciHostBridgeLib: Scan for root bridges when running over Xen
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com> Acked-by: Laszlo Ersek <lersek@redhat.com> Tested-by: Gary Lin <glin@suse.com>
Diffstat (limited to 'OvmfPkg/Library/PciHostBridgeLib/PciHostBridgeLib.c')
-rw-r--r--OvmfPkg/Library/PciHostBridgeLib/PciHostBridgeLib.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/OvmfPkg/Library/PciHostBridgeLib/PciHostBridgeLib.c b/OvmfPkg/Library/PciHostBridgeLib/PciHostBridgeLib.c
index aeb0bdf84d..6ba0ca6831 100644
--- a/OvmfPkg/Library/PciHostBridgeLib/PciHostBridgeLib.c
+++ b/OvmfPkg/Library/PciHostBridgeLib/PciHostBridgeLib.c
@@ -28,6 +28,7 @@
#include <Library/PciHostBridgeLib.h>
#include <Library/PciLib.h>
#include <Library/QemuFwCfgLib.h>
+#include "PciHostBridge.h"
#pragma pack(1)
@@ -113,7 +114,6 @@ STATIC PCI_ROOT_BRIDGE_APERTURE mNonExistAperture = { MAX_UINT64, 0 };
@retval EFI_OUT_OF_RESOURCES Memory allocation failed.
**/
-STATIC
EFI_STATUS
InitRootBridge (
IN UINT64 Supports,
@@ -217,6 +217,10 @@ PciHostBridgeGetRootBridges (
PCI_ROOT_BRIDGE_APERTURE Mem;
PCI_ROOT_BRIDGE_APERTURE MemAbove4G;
+ if (PcdGetBool (PcdPciDisableBusEnumeration)) {
+ return ScanForRootBridges (Count);
+ }
+
Attributes = EFI_PCI_ATTRIBUTE_IDE_PRIMARY_IO |
EFI_PCI_ATTRIBUTE_IDE_SECONDARY_IO |
EFI_PCI_ATTRIBUTE_ISA_IO_16 |