Commit 53dea36c70c1857149a8c447224e3936eb8b5339

Authored by Daniel Mack
Committed by Mark Brown
1 parent 96dcabb99b

ASoC: pxa-ssp: Correct check for stream presence

Don't rely on the codec's channels_min information to decide wheter or
not allocate a substream's DMA buffer. Rather check if the substream
itself was allocated previously.

Signed-off-by: Daniel Mack <zonque@gmail.com>
Acked-by: Liam Girdwood <lrg@ti.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Cc: stable@kernel.org

Showing 1 changed file with 2 additions and 2 deletions Side-by-side Diff

sound/soc/pxa/pxa2xx-pcm.c
... ... @@ -95,14 +95,14 @@
95 95 if (!card->dev->coherent_dma_mask)
96 96 card->dev->coherent_dma_mask = DMA_BIT_MASK(32);
97 97  
98   - if (dai->driver->playback.channels_min) {
  98 + if (pcm->streams[SNDRV_PCM_STREAM_PLAYBACK].substream) {
99 99 ret = pxa2xx_pcm_preallocate_dma_buffer(pcm,
100 100 SNDRV_PCM_STREAM_PLAYBACK);
101 101 if (ret)
102 102 goto out;
103 103 }
104 104  
105   - if (dai->driver->capture.channels_min) {
  105 + if (pcm->streams[SNDRV_PCM_STREAM_CAPTURE].substream) {
106 106 ret = pxa2xx_pcm_preallocate_dma_buffer(pcm,
107 107 SNDRV_PCM_STREAM_CAPTURE);
108 108 if (ret)