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 8f30e8836818f7b3a51955b948ee8763de683faa..023cc4cad5c1965b31a334503d94c37752e733e4 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);
        }