summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJeeja KP <jeeja.kp@intel.com>2015-12-18 15:12:00 +0530
committerMark Brown <broonie@kernel.org>2016-01-10 12:02:40 +0000
commit88888155c555487037b894a97a2a4c6a8155cda0 (patch)
treec36b1fc1017790afe0e08dad7e9c88bc52079e2f
parenta9c48f7f5906d02d4ec4aa50b1c20fccbce53eec (diff)
downloadlinux-stable-88888155c555487037b894a97a2a4c6a8155cda0.tar.gz
linux-stable-88888155c555487037b894a97a2a4c6a8155cda0.tar.bz2
linux-stable-88888155c555487037b894a97a2a4c6a8155cda0.zip
ALSA: hdac: couple the hda DMA stream in cleanup
A stream is by default in coupled mode, in DSP operation we move it to decoupled mode. On cleanup HW expects that we leave it back to default state so couple the DMA on cleanup. Signed-off-by: Jeeja KP <jeeja.kp@intel.com> Signed-off-by: Vinod Koul <vinod.koul@intel.com> Reviewed-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Mark Brown <broonie@kernel.org>
-rw-r--r--sound/hda/ext/hdac_ext_stream.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/sound/hda/ext/hdac_ext_stream.c b/sound/hda/ext/hdac_ext_stream.c
index 8f30e8836818..023cc4cad5c1 100644
--- a/sound/hda/ext/hdac_ext_stream.c
+++ b/sound/hda/ext/hdac_ext_stream.c
@@ -111,6 +111,7 @@ void snd_hdac_stream_free_all(struct hdac_ext_bus *ebus)
while (!list_empty(&bus->stream_list)) {
s = list_first_entry(&bus->stream_list, struct hdac_stream, list);
stream = stream_to_hdac_ext_stream(s);
+ snd_hdac_ext_stream_decouple(ebus, stream, false);
list_del(&s->list);
kfree(stream);
}