From: Takashi Iwai Date: Fri, 25 Oct 2013 22:33:58 +0000 (+0200) Subject: ALSA: hda - Sync EAPD with vmaster on AD1984A Thinkpads X-Git-Url: http://drtracing.org/?a=commitdiff_plain;h=afb5a7793144179bfd856e3c928b69c43e2a1d8a;p=deliverable%2Flinux.git 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 --- diff --git a/sound/pci/hda/patch_analog.c b/sound/pci/hda/patch_analog.c index 2aa2f579b4d6..87d2e0335ae4 100644 --- a/sound/pci/hda/patch_analog.c +++ b/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; - if (action == HDA_FIXUP_ACT_PRE_PROBE) + if (action == HDA_FIXUP_ACT_PRE_PROBE) { spec->gen.keep_eapd_on = 1; + spec->gen.vmaster_mute.hook = ad_vmaster_eapd_hook; + spec->eapd_nid = 0x12; + } } /* set magic COEFs for dmic */