[alsa-devel] Query on Audio DMA using DMAEngine

Mike Looijmans mike.looijmans at topic.nl
Tue Jul 2 08:02:00 CEST 2013


On 07/02/2013 03:28 AM, Joel Fernandes wrote:
> On 07/01/2013 01:10 AM, Mike Looijmans wrote:
>> With the cyclic DMA, I can capture 16 channels of 32-bit audio at 51kHz,
>> simultaneously playback 2 channels and write the audio data to an SD card on the
>> OMAP-L138. Before that change, it wasn't even possible to capture 4 channels
>> without overruns.
>
> Sweet! Any particular reason why it wasn't merged in vs the existing ping-pong code?

I've posted questions and other stuff concerning the McASP/OMAP1, but 
there was very little interest, so I supposed the chipset was on its way 
out and there wasn't any point in maintaining it.


>> I can mail you the 2.6.37 code, it isn't worthy for direct inclusion but may
>> save you some time to figure things out.
>
> Certainly could take a look. Could you share it? Thank you.

I attached the source files.

There are a lot of changes in the files that are product specific hacks 
to get my things working in the cheapest way possible (cheap meaning 
spending little effort).

I also included the "davinci-mcasp.c" code. Because the customer wanted 
a bigger buffer, I set up the McASP FIFO to transfer larger blocks. The 
DMA is limited to 64k words, so increasing the size of a "word" is a 
sure way to transfer more data. It's also good for bursting transfers, 
which I'm told the DDR memory likes much better. I was unable to measure 
any effect (positive nor negative) of that though. The larger blocks 
aren't needed if you're satisfied with much smaller buffers, which for 
normal purposed should be just fine.

Mike.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: davinci-2.6.37-cyclic-dma.tar.gz
Type: application/x-gzip
Size: 10498 bytes
Desc: not available
URL: <http://mailman.alsa-project.org/pipermail/alsa-devel/attachments/20130702/1aad5f85/attachment.gz>


More information about the Alsa-devel mailing list