diff options
author | Takashi Iwai <tiwai@suse.de> | 2008-11-25 10:17:20 +0300 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2008-11-25 12:31:44 +0300 |
commit | 9e97697666d0e7494946cfb639f6a9faacd5f1b0 (patch) | |
tree | 397cdf9d0950d511425874b1534003469058aaa9 | |
parent | b0fc5e043401df4cd243352f1030c4d23e767347 (diff) | |
download | linux-9e97697666d0e7494946cfb639f6a9faacd5f1b0.tar.xz |
ALSA: hda - Fix caching of SPDIF status bits
SPDIF status bits controls are written via snd_hda_codec_write()
without caching. This causes a regression at resume that the bits
are lost.
Simply replacing it with the cached version fixes the problem.
Reference:
http://lkml.org/lkml/2008/11/24/324
Signed-off-by: Takashi Iwai <tiwai@suse.de>
-rw-r--r-- | sound/pci/hda/hda_codec.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sound/pci/hda/hda_codec.c b/sound/pci/hda/hda_codec.c index ba1ab737b55f..eb9164176dab 100644 --- a/sound/pci/hda/hda_codec.c +++ b/sound/pci/hda/hda_codec.c @@ -1436,12 +1436,12 @@ static void set_dig_out(struct hda_codec *codec, hda_nid_t nid, { hda_nid_t *d; - snd_hda_codec_write(codec, nid, 0, verb, val); + snd_hda_codec_write_cache(codec, nid, 0, verb, val); d = codec->slave_dig_outs; if (!d) return; for (; *d; d++) - snd_hda_codec_write(codec, *d, 0, verb, val); + snd_hda_codec_write_cache(codec, *d, 0, verb, val); } static inline void set_dig_out_convert(struct hda_codec *codec, hda_nid_t nid, |