summaryrefslogtreecommitdiffstats
path: root/sound/arm/pxa2xx-pcm-lib.c
diff options
context:
space:
mode:
authorMark Brown <broonie@opensource.wolfsonmicro.com>2009-08-19 19:31:46 +0100
committerMark Brown <broonie@opensource.wolfsonmicro.com>2009-08-19 20:30:14 +0100
commitf8bae4caaaf56c391f3e2380dd7105e765414178 (patch)
tree0bc9d013156e3b2081f9719eba3717455e6bce1f /sound/arm/pxa2xx-pcm-lib.c
parent474e09ca017bd0f6e9bf41af643364a21bc27f43 (diff)
downloadlinux-f8bae4caaaf56c391f3e2380dd7105e765414178.tar.bz2
ALSA: Restore support for DMAless DAIs on PXA
Used for applications such as direct bluetooth connections on smartphones which don't go via the CPU. This used to be supported before the refactoring to share code but this check was removed during that move. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'sound/arm/pxa2xx-pcm-lib.c')
-rw-r--r--sound/arm/pxa2xx-pcm-lib.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/sound/arm/pxa2xx-pcm-lib.c b/sound/arm/pxa2xx-pcm-lib.c
index 6205f37d547c..743ac6a29065 100644
--- a/sound/arm/pxa2xx-pcm-lib.c
+++ b/sound/arm/pxa2xx-pcm-lib.c
@@ -136,6 +136,9 @@ int __pxa2xx_pcm_prepare(struct snd_pcm_substream *substream)
{
struct pxa2xx_runtime_data *prtd = substream->runtime->private_data;
+ if (!prtd || !prtd->params)
+ return 0;
+
DCSR(prtd->dma_ch) &= ~DCSR_RUN;
DCSR(prtd->dma_ch) = 0;
DCMD(prtd->dma_ch) = 0;