ALSA: hda - Add missing EAPD initialization for VIA codecs
authorTakashi Iwai <tiwai@suse.de>
Tue, 7 Jul 2009 11:43:35 +0000 (13:43 +0200)
committerTakashi Iwai <tiwai@suse.de>
Tue, 7 Jul 2009 11:44:29 +0000 (13:44 +0200)
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>
sound/pci/hda/patch_via.c

index c4ddbbc..322e102 100644 (file)
@@ -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);
 }