瀏覽代碼

ALSA: hda - Sync EAPD with vmaster on AD1984A Thinkpads

As EAPD on NID 0x12 (speaker pin) is used as the master amp on
Thinkpads with AD1984A codec, we can hook this to vmaster for saving a
bit more power at master mute state.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Takashi Iwai 11 年之前
父節點
當前提交
afb5a77931
共有 1 個文件被更改,包括 4 次插入1 次删除
  1. 4 1
      sound/pci/hda/patch_analog.c

+ 4 - 1
sound/pci/hda/patch_analog.c

@@ -973,8 +973,11 @@ static void ad1884_fixup_thinkpad(struct hda_codec *codec,
 {
 {
 	struct ad198x_spec *spec = codec->spec;
 	struct ad198x_spec *spec = codec->spec;
 
 
-	if (action == HDA_FIXUP_ACT_PRE_PROBE)
+	if (action == HDA_FIXUP_ACT_PRE_PROBE) {
 		spec->gen.keep_eapd_on = 1;
 		spec->gen.keep_eapd_on = 1;
+		spec->gen.vmaster_mute.hook = ad_vmaster_eapd_hook;
+		spec->eapd_nid = 0x12;
+	}
 }
 }
 
 
 /* set magic COEFs for dmic */
 /* set magic COEFs for dmic */