Hello NXP,
According to the document "AN13164 iMX8MP PCIe Bandwith Analysis", it have the Linux PCI test and test by DMA.
The document "IMX8MPRM- i.MX 8M Plus Applications Processor Reference Manual - Document Number: IMX8MPRM Rev. 1, 06/2021" also show the "Embedded DMA" feature.
Could I write/read PCIe data by DMA ?
Thanks.
Best Regards,
Wayne.
Hi NXP TechSupport,
The URL pointing to the sample code in the original email trail does not work. Could you post a working one?
I am looking for a working kernel module code that fetches data on a remote device over PCIe bus by using the SDMA. Any related sample code using the Linux kernel PCIe stack and the DMAEngine are very helpful.
Thanks you very much!
dwang2
Hello NXP,
How could I use the PCIe DMA ?
Could you provide any reference code or document ?
Thanks.
Best Regards,
Wayne.
Hi Wayne,
The documentation is IMX8MPRM.pdf section 11.4.2.4 DMA Controller.
The reference code is here: https://source.codeaurora.org/external/imx/linux-imx/tree/drivers/pci/controller/dwc/pci-imx6.c?h=im...
Look for the function "imx6_pcie_local_dma_start". That code seems to have been removed from the latest kernel release, but I was able to add it back in and it seems to work. But it doesn't seem to be part of the pci_endpoint_test, so I'm unable to recreate the bandwidth results from AN13164 since NXP didn't describe how to run the benchmark.