I have a PCIe device (which is an FPGA board) connected to the i.MX 8M and I see a problem with DMA transfers. The device itself works well for a couple of years on older ARM systems. Here is my problem:
I started a DMA transfer of 4 bytes on the PCI bus (the DMA controller is inside the device so that it will do a PCI bus master transfer) and this transfer never started or finished, so it looks like the transfer size of 4 bytes is too small. Larger transfers (8 or more bytes) work fine.
Is there a limitation on the i.MX 8 which disallows 32bit transfers? Is there a way to change/configure it to allow 32bit DMA transfers or could this be something else? Any help is appreciated.
I'm using a Linux kernel 5.4.70-2.3.0 right now, which comes with an iWave Q7 module.