Re: [PATCH] pci: designware: Set DMA_BYPASS bit in outbound IATU CTRL2 register

From: Krishna Chaitanya Chundru

Date: Wed Sep 02 2026 - 11:25:08 EST




On 9/2/2026 7:37 PM, Manivannan Sadhasivam wrote:
> On Wed, Aug 26, 2026 at 02:41:20PM +0530, Sumit Kumar wrote:
>> Outbound IATU apertures are configured with local device-side addresses.
>> When DMA engine transactions use destination addresses which fall within
>> an outbound IATU aperture range, they get unintentionally translated by
>> the IATU, causing the wrong address to be sent on the PCIe link.
>> This results in data corruption or IOMMU errors at the host if the
>> translated address is not mapped.
>>
> Why are you using the same device address in both DMA and iATU mapping? This
> sounds like a mapping problem that you should fix instead.
issue happens, when host address(DMA destination address) matches with the
internal iova address programmed in iATU src address.
As we can cannot address in both,  we need to program iATU in DMA bypass mode,
so DMA transcations will not go through iATU window.

- Krishna Chaitanya.
>
> - Mani
>