summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--target/linux/xburst/files-2.6.32/sound/soc/jz4740/jz4740-pcm.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/target/linux/xburst/files-2.6.32/sound/soc/jz4740/jz4740-pcm.c b/target/linux/xburst/files-2.6.32/sound/soc/jz4740/jz4740-pcm.c
index c71c5b4..4a4de19 100644
--- a/target/linux/xburst/files-2.6.32/sound/soc/jz4740/jz4740-pcm.c
+++ b/target/linux/xburst/files-2.6.32/sound/soc/jz4740/jz4740-pcm.c
@@ -105,10 +105,11 @@ static int jz4740_pcm_hw_params(struct snd_pcm_substream *substream,
struct jz4740_pcm_config *config;
config = rtd->dai->cpu_dai->dma_data;
- if (substream->stream == SNDRV_PCM_STREAM_PLAYBACK) {
- prtd->dma = jz4740_dma_request(substream, "PCM Playback");
- } else {
- prtd->dma = jz4740_dma_request(substream, "PCM Capture");
+ if (!prtd->dma) {
+ if (substream->stream == SNDRV_PCM_STREAM_PLAYBACK)
+ prtd->dma = jz4740_dma_request(substream, "PCM Playback");
+ else
+ prtd->dma = jz4740_dma_request(substream, "PCM Capture");
}
if (!prtd->dma)