diff options
Diffstat (limited to 'sound/soc/pxa/pxa2xx-i2s.c')
| -rw-r--r-- | sound/soc/pxa/pxa2xx-i2s.c | 7 | 
1 files changed, 5 insertions, 2 deletions
diff --git a/sound/soc/pxa/pxa2xx-i2s.c b/sound/soc/pxa/pxa2xx-i2s.c index 6b8f655d1ad..c1a5275721e 100644 --- a/sound/soc/pxa/pxa2xx-i2s.c +++ b/sound/soc/pxa/pxa2xx-i2s.c @@ -164,6 +164,7 @@ static int pxa2xx_i2s_hw_params(struct snd_pcm_substream *substream,  {  	struct snd_soc_pcm_runtime *rtd = substream->private_data;  	struct snd_soc_dai *cpu_dai = rtd->dai->cpu_dai; +	struct pxa2xx_pcm_dma_params *dma_data;  	BUG_ON(IS_ERR(clk_i2s));  	clk_enable(clk_i2s); @@ -171,9 +172,11 @@ static int pxa2xx_i2s_hw_params(struct snd_pcm_substream *substream,  	pxa_i2s_wait();  	if (substream->stream == SNDRV_PCM_STREAM_PLAYBACK) -		cpu_dai->dma_data = &pxa2xx_i2s_pcm_stereo_out; +		dma_data = &pxa2xx_i2s_pcm_stereo_out;  	else -		cpu_dai->dma_data = &pxa2xx_i2s_pcm_stereo_in; +		dma_data = &pxa2xx_i2s_pcm_stereo_in; + +	snd_soc_dai_set_dma_data(cpu_dai, substream, dma_data);  	/* is port used by another stream */  	if (!(SACR0 & SACR0_ENB)) {  |