[alsa-devel] Query on Audio DMA using DMAEngine
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.
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 10498 bytes
Desc: not available
More information about the Alsa-devel