diff options
author | Shengjiu Wang <b02247@freescale.com> | 2014-07-02 19:08:38 +0800 |
---|---|---|
committer | Nitin Garg <nitin.garg@freescale.com> | 2014-08-27 18:29:14 -0500 |
commit | 2e516e0787f9f83003a2fddac2ce1ce51bbdcfcc (patch) | |
tree | 1af8607e810ce745a149e93dd520b7b8d6301317 /sound/soc | |
parent | bb451c51ff4e6bf2e14a3491b4f885e8e148079d (diff) |
ENGR00320849-3 ASoC: dmaengine: Audio suspend/resume will be failed.
SDMA suspend/resume is not good enough to support audio suspend/resume.
So disable audio suspend/resume temporarily.
Revert "ENGR00318773-5 ASoC: dmaengine: Merge trigger RESUME to START and SUSPEND to STOP"
This reverts commit 29a807b337b0e74460fd3ec699e54eb61183279a.
Signed-off-by: Shengjiu Wang <b02247@freescale.com>
Diffstat (limited to 'sound/soc')
-rw-r--r-- | sound/soc/soc-dmaengine-pcm.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/sound/soc/soc-dmaengine-pcm.c b/sound/soc/soc-dmaengine-pcm.c index 8d01630c93f7..f762ac0f9f1c 100644 --- a/sound/soc/soc-dmaengine-pcm.c +++ b/sound/soc/soc-dmaengine-pcm.c @@ -187,16 +187,20 @@ int snd_dmaengine_pcm_trigger(struct snd_pcm_substream *substream, int cmd) switch (cmd) { case SNDRV_PCM_TRIGGER_START: - case SNDRV_PCM_TRIGGER_RESUME: - case SNDRV_PCM_TRIGGER_PAUSE_RELEASE: ret = dmaengine_pcm_prepare_and_submit(substream); if (ret) return ret; dma_async_issue_pending(prtd->dma_chan); break; - case SNDRV_PCM_TRIGGER_STOP: + case SNDRV_PCM_TRIGGER_RESUME: + case SNDRV_PCM_TRIGGER_PAUSE_RELEASE: + dmaengine_resume(prtd->dma_chan); + break; case SNDRV_PCM_TRIGGER_SUSPEND: case SNDRV_PCM_TRIGGER_PAUSE_PUSH: + dmaengine_pause(prtd->dma_chan); + break; + case SNDRV_PCM_TRIGGER_STOP: dmaengine_terminate_all(prtd->dma_chan); break; default: |