Home Home > GIT Browse
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2018-08-03 14:03:49 +0200
committerTakashi Iwai <tiwai@suse.de>2018-08-03 14:04:14 +0200
commit4c3d502b829a5c236cc7ba344f1f7f251bf5dae6 (patch)
tree33e59316c95b49c5603a1dbe46b6a44d08cf64a0
parent7d89bb0765283f838bf156116d5b39f2f16e6287 (diff)
ASoC: dpcm: fix BE dai not hw_free and shutdown (bsc#1051510).
-rw-r--r--sound/soc/soc-pcm.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/sound/soc/soc-pcm.c b/sound/soc/soc-pcm.c
index 8ff7cd3b8c1f..2a09d8579699 100644
--- a/sound/soc/soc-pcm.c
+++ b/sound/soc/soc-pcm.c
@@ -1779,8 +1779,10 @@ int dpcm_be_dai_shutdown(struct snd_soc_pcm_runtime *fe, int stream)
continue;
if ((be->dpcm[stream].state != SND_SOC_DPCM_STATE_HW_FREE) &&
- (be->dpcm[stream].state != SND_SOC_DPCM_STATE_OPEN))
- continue;
+ (be->dpcm[stream].state != SND_SOC_DPCM_STATE_OPEN)) {
+ soc_pcm_hw_free(be_substream);
+ be->dpcm[stream].state = SND_SOC_DPCM_STATE_HW_FREE;
+ }
dev_dbg(be->dev, "ASoC: close BE %s\n",
be->dai_link->name);