diff options
author | Laszlo Ersek <lersek@redhat.com> | 2016-01-26 00:36:46 +0100 |
---|---|---|
committer | Laszlo Ersek <lersek@redhat.com> | 2016-03-03 18:18:39 +0100 |
commit | 390951c2b803535e7fe8ecbba3fc1ff6bdaa3da5 (patch) | |
tree | 16faa1dacb60853303bab92483413d85fcca7796 | |
parent | 0dcd1b1b2a8e3c2548ab552b9b3ba2d9f25d515f (diff) | |
download | edk2-platforms-390951c2b803535e7fe8ecbba3fc1ff6bdaa3da5.tar.xz |
OvmfPkg: PciHostBridgeLib: set bus, IO and 32-bit MMIO windows in RootBus
The bus aperture is copied verbatim from InitRootBridge()
[OvmfPkg/PciHostBridgeDxe/PciHostBridge.c].
The IO and 32-bit MMIO apertures are matched to PlatformPei's settings.
PciHostBridgeLibDxe expects PciHostBridgeLib instances to advertize the
exact apertures.
Cc: Jordan Justen <jordan.l.justen@intel.com>
Cc: Ruiyu Ni <ruiyu.ni@intel.com>
Cc: Marcel Apfelbaum <marcel@redhat.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
-rw-r--r-- | OvmfPkg/Library/PciHostBridgeLib/PciHostBridgeLib.c | 8 | ||||
-rw-r--r-- | OvmfPkg/Library/PciHostBridgeLib/PciHostBridgeLib.inf | 6 |
2 files changed, 14 insertions, 0 deletions
diff --git a/OvmfPkg/Library/PciHostBridgeLib/PciHostBridgeLib.c b/OvmfPkg/Library/PciHostBridgeLib/PciHostBridgeLib.c index b238a8544d..b23939d166 100644 --- a/OvmfPkg/Library/PciHostBridgeLib/PciHostBridgeLib.c +++ b/OvmfPkg/Library/PciHostBridgeLib/PciHostBridgeLib.c @@ -93,6 +93,14 @@ InitRootBridge ( RootBus->MemAbove4G.Base = 0;
RootBus->MemAbove4G.Limit = 0;
+ RootBus->Bus.Base = RootBusNumber;
+ RootBus->Bus.Limit = MaxSubBusNumber;
+ RootBus->Io.Base = PcdGet64 (PcdPciIoBase);
+ RootBus->Io.Limit = PcdGet64 (PcdPciIoBase) + (PcdGet64 (PcdPciIoSize) - 1);
+ RootBus->Mem.Base = PcdGet64 (PcdPciMmio32Base);
+ RootBus->Mem.Limit = PcdGet64 (PcdPciMmio32Base) +
+ (PcdGet64 (PcdPciMmio32Size) - 1);
+
return EFI_OUT_OF_RESOURCES;
}
diff --git a/OvmfPkg/Library/PciHostBridgeLib/PciHostBridgeLib.inf b/OvmfPkg/Library/PciHostBridgeLib/PciHostBridgeLib.inf index 096d728f3c..e95ebfdc93 100644 --- a/OvmfPkg/Library/PciHostBridgeLib/PciHostBridgeLib.inf +++ b/OvmfPkg/Library/PciHostBridgeLib/PciHostBridgeLib.inf @@ -44,3 +44,9 @@ MemoryAllocationLib
PciLib
QemuFwCfgLib
+
+[Pcd]
+ gUefiOvmfPkgTokenSpaceGuid.PcdPciIoBase
+ gUefiOvmfPkgTokenSpaceGuid.PcdPciIoSize
+ gUefiOvmfPkgTokenSpaceGuid.PcdPciMmio32Base
+ gUefiOvmfPkgTokenSpaceGuid.PcdPciMmio32Size
|