ALSA: hdac: couple the hda DMA stream in cleanup
authorJeeja KP <jeeja.kp@intel.com>
Fri, 18 Dec 2015 09:42:00 +0000 (15:12 +0530)
committerMark Brown <broonie@kernel.org>
Sun, 10 Jan 2016 12:02:40 +0000 (12:02 +0000)
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>
sound/hda/ext/hdac_ext_stream.c

index 8f30e88..023cc4c 100644 (file)
@@ -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);
        }