X-Git-Url: https://git.karo-electronics.de/?a=blobdiff_plain;f=sound%2Fhda%2Fhdac_controller.c;h=978dc1801b3aceb8e2245b819097954c76595d77;hb=27bc344014289a298a9fad4b828fcf61daa60aff;hp=ee08c389b4d68900c0065b346aeddb75a6e5eabc;hpb=6b402bdfdbafce241cb6789ae38d94f45641078c;p=karo-tx-linux.git diff --git a/sound/hda/hdac_controller.c b/sound/hda/hdac_controller.c index ee08c389b4d6..978dc1801b3a 100644 --- a/sound/hda/hdac_controller.c +++ b/sound/hda/hdac_controller.c @@ -106,7 +106,11 @@ void snd_hdac_bus_stop_cmd_io(struct hdac_bus *bus) /* disable ringbuffer DMAs */ snd_hdac_chip_writeb(bus, RIRBCTL, 0); snd_hdac_chip_writeb(bus, CORBCTL, 0); + spin_unlock_irq(&bus->reg_lock); + hdac_wait_for_cmd_dmas(bus); + + spin_lock_irq(&bus->reg_lock); /* disable unsolicited responses */ snd_hdac_chip_updatel(bus, GCTL, AZX_GCTL_UNSOL, 0); spin_unlock_irq(&bus->reg_lock);