aboutsummaryrefslogtreecommitdiffstats
path: root/sound
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2009-07-22 12:15:10 -0400
committerTakashi Iwai <tiwai@suse.de>2009-07-22 12:15:10 -0400
commit4012ade9338c05428162e85cc9b149dcadf1ce85 (patch)
tree603d14ece88466c4e75c1276d40ddefa7b7e9e33 /sound
parent86de7416600e93835eeacee379aea939b6a0917a (diff)
ALSA: hda - Restore GPIO1 properly at resume with AD1984A
The commit 099db17e66294b02814dee01c81d9abbbeece93e introduced a regression at suspend/resume where the GPIO1 bit isn't properly restored, thus the speaker output gets muted initially after resume. The fix is simple, use the cached write for storing GPIO data. Reference: Novell bnc#522764 https://bugzilla.novell.com/show_bug.cgi?id=522764 Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound')
-rw-r--r--sound/pci/hda/patch_analog.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sound/pci/hda/patch_analog.c b/sound/pci/hda/patch_analog.c
index f795ee588cc7..e8e6a43865c2 100644
--- a/sound/pci/hda/patch_analog.c
+++ b/sound/pci/hda/patch_analog.c
@@ -3742,7 +3742,7 @@ static int ad1884a_mobile_master_sw_put(struct snd_kcontrol *kcontrol,
3742 int mute = (!ucontrol->value.integer.value[0] && 3742 int mute = (!ucontrol->value.integer.value[0] &&
3743 !ucontrol->value.integer.value[1]); 3743 !ucontrol->value.integer.value[1]);
3744 /* toggle GPIO1 according to the mute state */ 3744 /* toggle GPIO1 according to the mute state */
3745 snd_hda_codec_write(codec, 0x01, 0, AC_VERB_SET_GPIO_DATA, 3745 snd_hda_codec_write_cache(codec, 0x01, 0, AC_VERB_SET_GPIO_DATA,
3746 mute ? 0x02 : 0x0); 3746 mute ? 0x02 : 0x0);
3747 return ret; 3747 return ret;
3748} 3748}