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 <tiwai@suse.de>
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;