[alsa-devel] [PATCH] ASoC: atmel-pcm-dma: Remove SND_DMAENGINE_PCM_FLAG_NO_RESIDUE flag

Bo Shen voice.shen at atmel.com
Tue Jan 7 10:05:29 CET 2014


Hi Lars,

On 01/06/2014 10:30 PM, Lars-Peter Clausen wrote:
> Since commit d48de6f1a ("DMA: AT91: Get residual bytes in dma buffer") the
> at91-dma driver has support for residue reporting. So there is no need to
> specify the SND_DMAENGINE_PCM_FLAG_NO_RESIDUE flag. This allows for a finer
> grained resolution of the PCM pointer as well as avoids the race condition that
> can occur with the period counting that is used when the dmaengine driver does
> not support residue reporting.
>
> Signed-off-by: Lars-Peter Clausen <lars at metafoo.de>
>
> ---
> I don't have the hardware, so only compile tested. It should work though if the
> residue calculation in the dma driver is implemented correctly.
> ---
>   sound/soc/atmel/atmel-pcm-dma.c | 3 +--
>   1 file changed, 1 insertion(+), 2 deletions(-)

Thanks for your patch.

For the dma get residue code, we are improving it. So, I think we'd 
better waiting the improvement done and after let this patch go into 
mainline.

What do you think?

> diff --git a/sound/soc/atmel/atmel-pcm-dma.c b/sound/soc/atmel/atmel-pcm-dma.c
> index 06082e5..ba1366a 100644
> --- a/sound/soc/atmel/atmel-pcm-dma.c
> +++ b/sound/soc/atmel/atmel-pcm-dma.c
> @@ -129,8 +129,7 @@ static const struct snd_dmaengine_pcm_config atmel_dmaengine_pcm_config = {
>
>   int atmel_pcm_dma_platform_register(struct device *dev)
>   {
> -	return snd_dmaengine_pcm_register(dev, &atmel_dmaengine_pcm_config,
> -			SND_DMAENGINE_PCM_FLAG_NO_RESIDUE);
> +	return snd_dmaengine_pcm_register(dev, &atmel_dmaengine_pcm_config, 0);
>   }
>   EXPORT_SYMBOL(atmel_pcm_dma_platform_register);
>
>

Best Regards,
Bo Shen


More information about the Alsa-devel mailing list