summaryrefslogtreecommitdiffstats
path: root/sound
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2009-07-07 13:43:35 +0200
committerTakashi Iwai <tiwai@suse.de>2009-07-07 13:44:29 +0200
commitd3a11e601a51291fbdd40c47f6af6769b6e905ef (patch)
tree9072b4399ea0b97a2bfbb54f5c6291f491a70312 /sound
parentALSA: hda - Clean up VT170x dig-in initialization code (diff)
downloadlinux-d3a11e601a51291fbdd40c47f6af6769b6e905ef.tar.xz
linux-d3a11e601a51291fbdd40c47f6af6769b6e905ef.zip
ALSA: hda - Add missing EAPD initialization for VIA codecs
If the output pin is used and EAPD capability is present, turn on the EAPD bit. This fixes the silent output problem on ASUS laptops with VT1708S codec. Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound')
-rw-r--r--sound/pci/hda/patch_via.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/sound/pci/hda/patch_via.c b/sound/pci/hda/patch_via.c
index c4ddbbc6231a..322e10272474 100644
--- a/sound/pci/hda/patch_via.c
+++ b/sound/pci/hda/patch_via.c
@@ -320,6 +320,9 @@ static void via_auto_set_output_and_unmute(struct hda_codec *codec,
pin_type);
snd_hda_codec_write(codec, nid, 0, AC_VERB_SET_AMP_GAIN_MUTE,
AMP_OUT_UNMUTE);
+ if (snd_hda_query_pin_caps(codec, nid) & AC_PINCAP_EAPD)
+ snd_hda_codec_write(codec, nid, 0,
+ AC_VERB_SET_EAPD_BTLENABLE, 0x02);
}