]>
Commit | Line | Data |
---|---|---|
2cb7cef9 BS |
1 | From: Takashi Iwai <tiwai@suse.de> |
2 | Subject: ALSA: hda - Fix caching of SPDIF status bits | |
3 | Patch-mainline: | |
4 | References: | |
5 | ||
6 | SPDIF status bits controls are written via snd_hda_codec_write() | |
7 | without caching. This causes a regression at resume that the bits | |
8 | are lost. | |
9 | ||
10 | Simply replacing it with the cached version fixes the problem. | |
11 | ||
12 | Reference: http://lkml.org/lkml/2008/11/24/324 | |
13 | ||
14 | Signed-off-by: Takashi Iwai <tiwai@suse.de> | |
15 | ||
16 | --- | |
17 | sound/pci/hda/hda_codec.c | 4 ++-- | |
18 | 1 file changed, 2 insertions(+), 2 deletions(-) | |
19 | ||
20 | --- a/sound/pci/hda/hda_codec.c | |
21 | +++ b/sound/pci/hda/hda_codec.c | |
22 | @@ -1430,12 +1430,12 @@ static void set_dig_out(struct hda_codec | |
23 | { | |
24 | hda_nid_t *d; | |
25 | ||
26 | - snd_hda_codec_write(codec, nid, 0, verb, val); | |
27 | + snd_hda_codec_write_cache(codec, nid, 0, verb, val); | |
28 | d = codec->slave_dig_outs; | |
29 | if (!d) | |
30 | return; | |
31 | for (; *d; d++) | |
32 | - snd_hda_codec_write(codec, *d, 0, verb, val); | |
33 | + snd_hda_codec_write_cache(codec, *d, 0, verb, val); | |
34 | } | |
35 | ||
36 | static inline void set_dig_out_convert(struct hda_codec *codec, hda_nid_t nid, |