From a836dbf685fa58c7db6cd56ad4559b2e6c02c8d9 Mon Sep 17 00:00:00 2001 From: Takashi Iwai Date: Tue, 22 Jan 2013 15:18:17 +0100 Subject: [PATCH] ALSA: hda - Fix missing call of cmd flush in capture volume put callback The capture volume put callback may call the node selection change, and its actual call won't be triggered unless flushed. In general, we always need to call both snd_hda_codec_flush_amp_cache() and snd_hda_codec_flush_cmd_cache() at the same place... Signed-off-by: Takashi Iwai --- sound/pci/hda/hda_generic.c | 1 + 1 file changed, 1 insertion(+) diff --git a/sound/pci/hda/hda_generic.c b/sound/pci/hda/hda_generic.c index 374fd6c6558b..b301952dc081 100644 --- a/sound/pci/hda/hda_generic.c +++ b/sound/pci/hda/hda_generic.c @@ -2840,6 +2840,7 @@ static int cap_put_caller(struct snd_kcontrol *kcontrol, codec->cached_write = 0; mutex_unlock(&codec->control_mutex); snd_hda_codec_flush_amp_cache(codec); /* flush the updates */ + snd_hda_codec_flush_cmd_cache(codec); if (err >= 0 && spec->cap_sync_hook) spec->cap_sync_hook(codec, ucontrol); return err; -- 2.20.1