From d494dd1f0689328b2c9a62fa168ff774928becc6 Mon Sep 17 00:00:00 2001
From: David Henningsson <david.henningsson@canonical.com>
Date: Tue, 29 Nov 2011 09:19:45 +0100
Subject: [PATCH] ALSA: HDA: Fix Realtek automute Line Out -> Internal Speaker

In kernels 3.0 and 3.1, no automute control was created unless
Headphone pins were present. This patch enables automute for the
case where there are just Line Out and Speaker pins.

BugLink: http://bugs.launchpad.net/bugs/882693
Cc: stable@kernel.org (3.0 and 3.1)
Tested-by: Marc Legris <marc.legris@canonical.com>
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
---
 sound/pci/hda/patch_realtek.c |    6 +++++-
 1 files changed, 5 insertions(+), 1 deletions(-)

diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
index e7dc034..c85ce60 100644
--- a/sound/pci/hda/patch_realtek.c
+++ b/sound/pci/hda/patch_realtek.c
@@ -1605,7 +1605,7 @@ static void alc_init_auto_hp(struct hda_codec *codec)
 		spec->automute = 1;
 		spec->automute_mode = ALC_AUTOMUTE_PIN;
 	}
-	if (spec->automute && cfg->line_out_pins[0] &&
+	if (cfg->line_out_pins[0] &&
 	    cfg->speaker_pins[0] &&
 	    cfg->line_out_pins[0] != cfg->hp_pins[0] &&
 	    cfg->line_out_pins[0] != cfg->speaker_pins[0]) {
@@ -1619,6 +1619,10 @@ static void alc_init_auto_hp(struct hda_codec *codec)
 					AC_VERB_SET_UNSOLICITED_ENABLE,
 					AC_USRSP_EN | ALC880_FRONT_EVENT);
 			spec->detect_line = 1;
+			if (!spec->automute) {
+				spec->automute = 1;
+				spec->automute_mode = ALC_AUTOMUTE_PIN;
+			}
 		}
 		spec->automute_lines = spec->detect_line;
 	}
-- 
1.7.5.4

