[alsa-devel] [PATCH 01/17] ASoC: dmaengine-pcm: Make requesting the DMA channel at PCM open optional

Lars-Peter Clausen lars at metafoo.de
Tue Apr 16 07:33:12 CEST 2013


On 04/16/2013 01:28 AM, Ryan Mallon wrote:
> On 16/04/13 03:19, Lars-Peter Clausen wrote:
>> Refactor the dmaengine PCM library to allow the DMA channel to be requested
>> before opening a PCM substream. snd_dmaengine_pcm_open() now expects a DMA
>> channel instead of a filter function and filter parameter as its parameters.
>> snd_dmaengine_pcm_close() is updated to not release the DMA channel. This allows
>> a dmaengine based PCM driver to request its channels before the substream is
>> opened.
>>
>> The patch also introduces two new functions, snd_dmaengine_pcm_open_request_chan()
>> and snd_dmaengine_pcm_close_release_chan(), which have the same signature and
>> behaviour of the old snd_dmaengine_pcm_{open,close}() and internally use the new
>> variants of these functions. All users of snd_dmaengine_pcm_{open,close}() are
>> updated to use snd_dmaengine_pcm_open_request_chan() and
>> snd_dmaengine_pcm_close_release_chan().
>>
>> Signed-off-by: Lars-Peter Clausen <lars at metafoo.de>
> 
> <snip>
> 
>> --- a/sound/soc/cirrus/ep93xx-pcm.c
>> +++ b/sound/soc/cirrus/ep93xx-pcm.c
>> @@ -69,7 +69,8 @@ static int ep93xx_pcm_open(struct snd_pcm_substream *substream)
>>  
>>  	snd_soc_set_runtime_hwparams(substream, &ep93xx_pcm_hardware);
>>  
>> -	return snd_dmaengine_pcm_open(substream, ep93xx_pcm_dma_filter,
>> +	return snd_dmaengine_pcm_open_request_chan(substream,
>> +			ep93xx_pcm_dma_filter,
>>  			snd_soc_dai_get_dma_data(rtd->cpu_dai, substream));
> 
> ep93xx_pcm_dma_filter is now unused and can be removed?

It's still used in the same way as before.

- Lars


More information about the Alsa-devel mailing list