[alsa-devel] [PATCH 2/2] ASoC: Davinci: Fix race with cpu_dai->dma_data

Troy Kisky troy.kisky at boundarydevices.com
Sat Sep 12 00:52:20 CEST 2009


Troy Kisky wrote:
> This patch removes references to cpu_dai->dma_data.
> It makes struct davinci_pcm_dma_params part of
> struct davinci_mcbsp_dev or struct davinci_audio_dev.
> 
> It removes the unused name variable from davinci_pcm_dma_params.
> 
> Signed-off-by: Troy Kisky <troy.kisky at boundarydevices.com>
> ---
>  sound/soc/davinci/davinci-i2s.c   |   36 +++++++++---------------------
>  sound/soc/davinci/davinci-mcasp.c |   44 ++++++++----------------------------
>  sound/soc/davinci/davinci-mcasp.h |    7 +++++-
>  sound/soc/davinci/davinci-pcm.c   |    3 +-
>  sound/soc/davinci/davinci-pcm.h   |    1 -
>  5 files changed, 29 insertions(+), 62 deletions(-)
> 
> diff --git a/sound/soc/davinci/davinci-pcm.c b/sound/soc/davinci/davinci-pcm.c
> index 002808b..359e99e 100644
> --- a/sound/soc/davinci/davinci-pcm.c
> +++ b/sound/soc/davinci/davinci-pcm.c
> @@ -238,7 +238,8 @@ static int davinci_pcm_open(struct snd_pcm_substream *substream)
>  	struct davinci_runtime_data *prtd;
>  	int ret = 0;
>  	struct snd_soc_pcm_runtime *rtd = substream->private_data;
> -	struct davinci_pcm_dma_params *params = rtd->dai->cpu_dai->dma_data;
> +	struct davinci_pcm_dma_params *pa = rtd->dai->cpu_dai->private_data;
> +	struct davinci_pcm_dma_params *params = &pa[substream->stream];
>  	if (!params)
>  		return -ENODEV;
>  
params can no longer be null, so the above 2 line can be deleted as well


More information about the Alsa-devel mailing list