I encounter some problem with data transfert between a iMX6 and a FPGA connected via the pcie.
Let me explain :
We use linux 3.0.35 (from the corresponding BSP) with the provided pcie driver (forcing GEN1 of pcie - no choice)
and we've develop a driver to access to the FPGA data via the function "ioremap_nocache" but with this function the transfert speed is too slow for our application (~12.5MBytes/s).
I found a "workaround" to increase the speed (~45MBytes/s) by using the function "ioremap_cached" which is perfect for our application but...
With this workaround, I often read "bad data" and after analysis the "bad data" correspond to the previous read data at the same location
The "bad data" is always a block of 32Bytes, and I don't have any clue to solve this problem
Thanks in advance