diff options
author | Laszlo Ersek <lersek@redhat.com> | 2016-01-25 23:50:14 +0100 |
---|---|---|
committer | Laszlo Ersek <lersek@redhat.com> | 2016-03-03 18:18:39 +0100 |
commit | c789d61dcb6b1990133a947351f67751cf0c4e31 (patch) | |
tree | 0cdfa0a7357bf59c1c7c2ba481018a8ce3f69730 /OvmfPkg/Library/PciHostBridgeLib | |
parent | a5ece62d79b73cc108110fe98d04d5c08c7c4304 (diff) | |
download | edk2-c789d61dcb6b1990133a947351f67751cf0c4e31.tar.gz edk2-c789d61dcb6b1990133a947351f67751cf0c4e31.tar.bz2 edk2-c789d61dcb6b1990133a947351f67751cf0c4e31.zip |
OvmfPkg: PciHostBridgeLib: clear RootBus->DmaAbove4G
When this BOOLEAN member is FALSE, and the caller tries to set up a DMA
transfer between a PCI device and a host buffer not entirely under 4GB,
then "MdeModulePkg/Bus/Pci/PciHostBridgeDxe" sets up a bounce buffer under
4GB, in the implementation of EFI_PCI_ROOT_BRIDGE_IO_PROTOCOL.Map().
Since that's exactly what RootBridgeIoMap() does in
"OvmfPkg/PciHostBridgeDxe/PciRootBridgeIo.c", stick with it in this
conversion.
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: Ruiyu Ni <ruiyu.ni@intel.com>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
Diffstat (limited to 'OvmfPkg/Library/PciHostBridgeLib')
-rw-r--r-- | OvmfPkg/Library/PciHostBridgeLib/PciHostBridgeLib.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/OvmfPkg/Library/PciHostBridgeLib/PciHostBridgeLib.c b/OvmfPkg/Library/PciHostBridgeLib/PciHostBridgeLib.c index db260291b8..f1cefe4169 100644 --- a/OvmfPkg/Library/PciHostBridgeLib/PciHostBridgeLib.c +++ b/OvmfPkg/Library/PciHostBridgeLib/PciHostBridgeLib.c @@ -82,6 +82,8 @@ InitRootBridge ( EFI_PCI_ATTRIBUTE_VGA_PALETTE_IO_16;
RootBus->Attributes = RootBus->Supports;
+ RootBus->DmaAbove4G = FALSE;
+
return EFI_OUT_OF_RESOURCES;
}
|