ALSA: hda - Cache the MUX selection for generic HDMI
authorTakashi Iwai <tiwai@suse.de>
Tue, 18 Jun 2013 14:14:22 +0000 (16:14 +0200)
committerTakashi Iwai <tiwai@suse.de>
Tue, 18 Jun 2013 14:14:22 +0000 (16:14 +0200)
When a selection to a converter MUX is changed in hdmi_pcm_open(), it
should be cached so that the given connection can be restored properly
at PM resume.  We need just to replace the corresponding
snd_hda_codec_write() call with snd_hda_codec_write_cache().

Cc: <stable@vger.kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/hda/patch_hdmi.c

index 8983747f2a3747bbaa6d24fd73a184defe1fc12e..844cf55a62b1d2afc37ce6cdf32becfea31217fb 100644 (file)
@@ -1155,7 +1155,7 @@ static int hdmi_pcm_open(struct hda_pcm_stream *hinfo,
        per_cvt->assigned = 1;
        hinfo->nid = per_cvt->cvt_nid;
 
-       snd_hda_codec_write(codec, per_pin->pin_nid, 0,
+       snd_hda_codec_write_cache(codec, per_pin->pin_nid, 0,
                            AC_VERB_SET_CONNECT_SEL,
                            mux_idx);
        snd_hda_spdif_ctls_assign(codec, pin_idx, per_cvt->cvt_nid);