--- /dev/null
+From: Takashi Iwai <tiwai@suse.de>
+Subject: ALSA: hda - Disable broken mic auto-muting in Realtek codes
+Patch-mainline:
+References: bnc#440626
+
+The recent addition of automatic mic-muting is broken in some cases.
+The code assumes that the pin nids <= 0x18, but the digital pins can
+be less than 0x18.
+Also, it assumes the front-mic being the internal mic, but it depends
+on the hardware implementation actually.
+
+Instead of complex case-fixes, better to disable the code as now.
+
+Signed-off-by: Takashi Iwai <tiwai@suse.de>
+
+---
+ sound/pci/hda/patch_realtek.c | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+--- a/sound/pci/hda/patch_realtek.c
++++ b/sound/pci/hda/patch_realtek.c
+@@ -829,6 +829,7 @@ static void alc_sku_automute(struct hda_
+ spec->jack_present ? 0 : PIN_OUT);
+ }
+
++#if 0 /* it's broken in some acses -- temporarily disabled */
+ static void alc_mic_automute(struct hda_codec *codec)
+ {
+ struct alc_spec *spec = codec->spec;
+@@ -849,6 +850,9 @@ static void alc_mic_automute(struct hda_
+ snd_hda_codec_amp_stereo(codec, 0x0b, HDA_INPUT, capsrc_idx_fmic,
+ HDA_AMP_MUTE, present ? HDA_AMP_MUTE : 0);
+ }
++#else
++#define alc_mic_automute(codec) /* NOP */
++#endif /* disabled */
+
+ /* unsolicited event for HP jack sensing */
+ static void alc_sku_unsol_event(struct hda_codec *codec, unsigned int res)
+@@ -1060,12 +1064,14 @@ do_sku:
+ AC_VERB_SET_UNSOLICITED_ENABLE,
+ AC_USRSP_EN | ALC880_HP_EVENT);
+
++#if 0 /* it's broken in some acses -- temporarily disabled */
+ if (spec->autocfg.input_pins[AUTO_PIN_MIC] &&
+ spec->autocfg.input_pins[AUTO_PIN_FRONT_MIC])
+ snd_hda_codec_write(codec,
+ spec->autocfg.input_pins[AUTO_PIN_MIC], 0,
+ AC_VERB_SET_UNSOLICITED_ENABLE,
+ AC_USRSP_EN | ALC880_MIC_EVENT);
++#endif /* disabled */
+
+ spec->unsol_event = alc_sku_unsol_event;
+ }