Falk,
DMA can be managed only from kernel driver,
not fro user space.
Existing drivers already take advantage of
DMA for Peripheral to MEM or MEM to Peripheral
transfers but there is no generic driver available
in the current LSP for MEM to MEM transfers.
Indeed that would be a good idea to have a substitute
for memcpy() using DMA (like we have the DAT_copy()
in the DSP's CSL).
So for now, you need to write yourself a kernel driver for that.
You will have to take care of virtual to physical memoy pointer
translation, scatter-gather.
I already want to do that for a few month but
did not had the time yet...
Regards,
Jean-Michel.
----- Original Message -----
From: "Brettschneider Falk" <[EMAIL PROTECTED]>
To: <[email protected]>
Sent: Monday, September 18, 2006 11:59 AM
Subject: how to program a DMA data transfer with Linux API?
Hi,
I want to copy data from SDRAM address A to SDRAM address B via DMA
transfer, instead of memcpy so to speak. How do I do that with DaVinci's
Linux? Can you show it to me in a tiny source code example, please?
On the DSP, I would use the CSL lib for that by using e.g. the EDMA_... or
DAT_... functions, but unfortunately, the CSL lib is not available for
DaVinci at present.
Cheers, [EMAIL PROTECTED]
_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source
_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source