Re: [PATCH] ArmPkg/ArmPciCpuIo2Dxe: Correct pci io memmap address


Ard Biesheuvel
 

On 9/15/20 11:35 AM, LiuYu wrote:
Since the device addresss has been translated in PciRootBridgeIo.c
so shuldn't translate it twice in ArmPciCpuIo2Dxe.c
Signed-off-by: LiuYu <liuyu@greatwall.com.cn>
Nack. The I/O translation in the I/O domain and the mapping of the I/O window in the physical memory space are two different translations, and they both need to be applied.

PciRootBridgeIo.c deals with the former, whereas this driver deals with the latter.


---
ArmPkg/Drivers/ArmPciCpuIo2Dxe/ArmPciCpuIo2Dxe.c | 2 --
1 file changed, 2 deletions(-)
diff --git a/ArmPkg/Drivers/ArmPciCpuIo2Dxe/ArmPciCpuIo2Dxe.c b/ArmPkg/Drivers/ArmPciCpuIo2Dxe/ArmPciCpuIo2Dxe.c
index d8625e1593..8c46a2778b 100644
--- a/ArmPkg/Drivers/ArmPciCpuIo2Dxe/ArmPciCpuIo2Dxe.c
+++ b/ArmPkg/Drivers/ArmPciCpuIo2Dxe/ArmPciCpuIo2Dxe.c
@@ -399,7 +399,6 @@ CpuIoServiceRead (
return Status;
}
- Address += PcdGet64 (PcdPciIoTranslation);
//
// Select loop based on the width of the transfer
@@ -485,7 +484,6 @@ CpuIoServiceWrite (
return Status;
}
- Address += PcdGet64 (PcdPciIoTranslation);
//
// Select loop based on the width of the transfer

Join devel@edk2.groups.io to automatically receive all group messages.