diff options
author | Lars-Peter Clausen <lars@metafoo.de> | 2013-11-30 18:00:45 +0100 |
---|---|---|
committer | Mark Brown <broonie@linaro.org> | 2013-12-02 11:24:31 +0000 |
commit | a22f33b00346f26d29483cdacdbf26df7947ef23 (patch) | |
tree | b46614d33fabb80ca7982929cb3f2a63547a4b7e /sound/soc | |
parent | 21585ee848078b12d0d1a513e93936bf96b444a0 (diff) |
ASoC: generic-dmaengine-pcm: Set BATCH flag when residue reporting is not supported
For dmaengine drivers which do not support transfer residue reporting we update
the PCM pointer with period granularity. Set the SNDRV_PCM_INFO_BATCH flag in
this case to let userspace know about this.
Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Mark Brown <broonie@linaro.org>
Diffstat (limited to 'sound/soc')
-rw-r--r-- | sound/soc/soc-generic-dmaengine-pcm.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/sound/soc/soc-generic-dmaengine-pcm.c b/sound/soc/soc-generic-dmaengine-pcm.c index cbc9c96ce1f4..87e86357124e 100644 --- a/sound/soc/soc-generic-dmaengine-pcm.c +++ b/sound/soc/soc-generic-dmaengine-pcm.c @@ -137,6 +137,9 @@ static int dmaengine_pcm_set_runtime_hwparams(struct snd_pcm_substream *substrea hw.buffer_bytes_max = SIZE_MAX; hw.fifo_size = dma_data->fifo_size; + if (pcm->flags & SND_DMAENGINE_PCM_FLAG_NO_RESIDUE) + hw.info |= SNDRV_PCM_INFO_BATCH; + ret = dma_get_slave_caps(chan, &dma_caps); if (ret == 0) { if (dma_caps.cmd_pause) |