Chris/Jeff,
Thanks a lot for the PCIe configurations and the updates of observations.
It looks like the outbound translation is enabled in DSP PCIe and based on the PCIe outbound translation registers, the following PCIe data space and addresses after translation have been enabled in your testing:
OB_OFFSET_INDEX1 (0x21800208: 0x13400001) --> PCIe data space address 0x60400000~0x607FFFFF translates to 0x13400000~0x137FFFFF
OB_OFFSET_INDEX2 (0x21800210: 0x2c000001) --> PCIe data space address 0x60800000~0x60BFFFFF translates to 0x2C000000~0x2C3FFFFF
OB_OFFSET_INDEX3 (0x21800218: 0x2d400001) --> PCIe data space address 0x60C00000~0x60FFFFFF translates to 0x2D400000~0x2D7FFFFF
OB_OFFSET_INDEX4 (0x21800220: 0x0a400001) --> PCIe data space address 0x61000000~0x613FFFFF translates to 0x0A400000~0x0A7FFFFF
OB_OFFSET_INDEX5 (0x21800228: 0x0ac00001) --> PCIe data space address 0x61400000~0x617FFFFF translates to 0x0AC00000~0x0AFFFFFF
OB_OFFSET_INDEX6 (0x21800230: 0x13800001) --> PCIe data space address 0x61800000~0x61BFFFFF translates to 0x13800000~0x13BFFFFF
OB_OFFSET_INDEX7 (0x21800238: 0x13c00001) --> PCIe data space address 0x61C00000~0x61FFFFFF translates to 0x13C00000~0x13FFFFFF
OB_OFFSET_INDEX8 (0x21800240: 0x23400001) --> PCIe data space address 0x62000000~0x623FFFFF translates to 0x23400000~0x237FFFFF
So if the src/dst addresses in your QDMA/memcpy falls within the above PCIe data space region, then it should be fine. And also make sure the Host BARs setup could accept those addresses after translation.
Please note that OB_OFFSET_INDEX0(0x21800200) is not enabled, so 0x60000000~0x603FFFFF should not be used for transfer.
Regarding to the data corruption, are you using DDR3 as memory endpoints in the current testing please?
As Jeff suggested, is it possible to use other memory endpoints (such as L2SRAM/MSMC SRAM) to isolate the DDR3, in case something wrong with DDR3 memory setup please?
And is it possible to isolate PCIe and transfers the data in DDR3 mem directly (both src/dst are in DDR3) with same amount of traffic to see if any data corruption could happen as well?
I think it will be good to isolate those factors and narrow down where the data corruption gets involved.