Sample DMA Project

Hello,

I am working on a project using cyclone v. I saw the SampleDMA project. I used the kernel from the branch socfpga-3.13-rel14.0, I enabled the DMA engine, PL330 and the fpg-dma as well. I updated the device tree to add the node for fpga-dma. We recompiled the bitstream because we don’t use the compressed bitstream.

The fpga-dma driver loaded correctly but when I do write/read data in /sys/kernel/debug/fpga_dma/dma, the driver timed out.

root@cyclone5:/sys/kernel/debug/fpga_dma# ls -l > dma
root@cyclone5:/sys/kernel/debug/fpga_dma# dmesg
fpga_dma ff230000.fifo: ALT_FPGADMA_CSR_WR_WTRMK 000003f0
fpga_dma ff230000.fifo: ALT_FPGADMA_CSR_RD_WTRMK 00000000
fpga_dma ff230000.fifo: ALT_FPGADMA_CSR_BURST 0000000f
fpga_dma ff230000.fifo: ALT_FPGADMA_CSR_FIFO_STATUS 0000030a
fpga_dma ff230000.fifo: ALT_FPGADMA_CSR_DATA_WIDTH 00000040
fpga_dma ff230000.fifo: ALT_FPGADMA_CSR_FIFO_DEPTH 00000400
fpga_dma ff230000.fifo: ALT_FPGADMA_CSR_ZERO 00000000

fpga_dma ff230000.fifo: Timeout waiting for TX DMA!
fpga_dma ff230000.fifo: count 315 burst_size 16 num_words 32 bytes_to_transfer 256

root@cyclone5:/sys/kernel/debug/fpga_dma# cat dma
cat: read error: Connection timed out

root@cyclone5:/sys/kernel/debug/fpga_dma# dmesg
fpga_dma ff230000.fifo: ALT_FPGADMA_CSR_WR_WTRMK 000003f0
fpga_dma ff230000.fifo: ALT_FPGADMA_CSR_RD_WTRMK 00000000
fpga_dma ff230000.fifo: ALT_FPGADMA_CSR_BURST 0000000f
fpga_dma ff230000.fifo: ALT_FPGADMA_CSR_FIFO_STATUS 0000030a
fpga_dma ff230000.fifo: ALT_FPGADMA_CSR_DATA_WIDTH 00000040
fpga_dma ff230000.fifo: ALT_FPGADMA_CSR_FIFO_DEPTH 00000400
fpga_dma ff230000.fifo: ALT_FPGADMA_CSR_ZERO 00000000
fpga_dma ff230000.fifo: Timeout waiting for TX DMA!
fpga_dma ff230000.fifo: count 315 burst_size 16 num_words 32 bytes_to_transfer 256
fpga_dma ff230000.fifo: Timeout waiting for RX DMA!
fpga_dma ff230000.fifo: Timeout waiting for RX DMA!

Can someone could give me some help with regards to the issue?.

Thank you in advance,

Regards,

John

No, but I have a did a driver for controling PL330 and send data from application to FPGA.

How to use it example here

I ve worked with FPGA DMA too but only in baremetal. I am doing a driver right now too. I will upload in less than a month.