The fix handles the PCI Dual Address Cycle Attribute case. It allows
drivers using PCI DAC run on Juno. 

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Daniil Egranov <daniil.egra...@arm.com>
---
 .../ArmJunoPkg/Drivers/PciHostBridgeDxe/PciRootBridge.c          | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/ArmPlatformPkg/ArmJunoPkg/Drivers/PciHostBridgeDxe/PciRootBridge.c 
b/ArmPlatformPkg/ArmJunoPkg/Drivers/PciHostBridgeDxe/PciRootBridge.c
index 10a4575..72d0915 100644
--- a/ArmPlatformPkg/ArmJunoPkg/Drivers/PciHostBridgeDxe/PciRootBridge.c
+++ b/ArmPlatformPkg/ArmJunoPkg/Drivers/PciHostBridgeDxe/PciRootBridge.c
@@ -518,11 +518,14 @@ PciRbMap (
 
   PCI_TRACE ("PciRbMap()");
 
-  if (Operation == EfiPciOperationBusMasterRead) {
+  if (Operation == EfiPciOperationBusMasterRead ||
+      Operation == EfiPciOperationBusMasterRead64) {
     DmaOperation = MapOperationBusMasterRead;
-  } else if (Operation == EfiPciOperationBusMasterWrite) {
+  } else if (Operation == EfiPciOperationBusMasterWrite ||
+             Operation == EfiPciOperationBusMasterWrite64) {
     DmaOperation = MapOperationBusMasterWrite;
-  } else if (Operation == EfiPciOperationBusMasterCommonBuffer) {
+  } else if (Operation == EfiPciOperationBusMasterCommonBuffer ||
+             Operation == EfiPciOperationBusMasterCommonBuffer64) {
     DmaOperation = MapOperationBusMasterCommonBuffer;
   } else {
     return EFI_INVALID_PARAMETER;
-- 
2.7.4

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to