Hello everyone!!
I have a question.!
I want to make interface i.mx6 solo and FPGA use EIM(with sdma).
I've already tested with that using eim.
But, it is not working very well.
| | | | | | <= inturrupts (200us interval)
dma channel 0 |-----|
dma channel 1 |-----|
dma channel 2 |-----|
....
However, this method did not work well because of the schemeler of dma.
How can I make dma without being pushed back to match the interrupt signal?
I would like to ask a follow-up question on this topic:
What if I just need an interface between a FPGA and the i.mx6's RAM by using a single SDMA channel? As far as I understand, I could use the "External Memory to External Memory Script" provided in the Reference Manual.
The question is:
Would the script be already implemented in the kernel if I compile it with "DMA Engine support" or do I need to write a driver myself to manage the communication between the EIM port and the i.mx6?
Note: I have seen that some devices i.e. UART have a DMA section in the Device Tree for them to carry out the communication through the SDMA, would that be necessary for the EIM in this case as well?
Thanks!
Jose
Hi Jose
no, by default NXP Linux does not support sdma with EIM module.
There are some sdma tutorials which may be helpful:
Freescale i.MX SDMA tutorial (part I)
Best regards
igor
Hi Hanseung
seems that can be accomplished developing custom sdma script,
this may be developed with help of Professional Services
Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------