From: Takashi Iwai <tiwai@suse.de>
Date: Tue, 7 Jul 2009 11:43:35 +0000 (+0200)
Subject: ALSA: hda - Add missing EAPD initialization for VIA codecs
X-Git-Tag: firefly_0821_release~13058^2~32
X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=d3a11e601a51291fbdd40c47f6af6769b6e905ef;p=firefly-linux-kernel-4.4.55.git

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>
---

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);
 }