ALSA: hda - Use always amps for auto-mute on AD1986A codec
authorTakashi Iwai <tiwai@suse.de>
Mon, 2 Dec 2013 14:04:03 +0000 (15:04 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 12 Dec 2013 06:37:51 +0000 (22:37 -0800)
commit b3bd4fc3822a6b5883eaa556822487d87752d443 upstream.

It seems that AD1986A cannot manage the dynamic pin on/off for
auto-muting, but rather gets confused.  Since each output has own amp,
let's use it instead.

Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=64971
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
sound/pci/hda/patch_analog.c

index a52d2a1a5e83631969326254813810e606a93ff9..463b9bd70142a25cc2580ff65926dba848d1c296 100644 (file)
@@ -345,6 +345,9 @@ static int patch_ad1986a(struct hda_codec *codec)
         */
        spec->gen.multiout.no_share_stream = 1;
 
+       /* AD1986A can't manage the dynamic pin on/off smoothly */
+       spec->gen.auto_mute_via_amp = 1;
+
        snd_hda_pick_fixup(codec, ad1986a_fixup_models, ad1986a_fixup_tbl,
                           ad1986a_fixups);
        snd_hda_apply_fixup(codec, HDA_FIXUP_ACT_PRE_PROBE);