]> git.ipfire.org Git - people/pmueller/ipfire-2.x.git/blob - src/patches/suse-2.6.27.31/patches.drivers/alsa-hda-realtek-mic-automute-fix
Changed checkfs to auto reboot after correctable fsck fixes.
[people/pmueller/ipfire-2.x.git] / src / patches / suse-2.6.27.31 / patches.drivers / alsa-hda-realtek-mic-automute-fix
1 From: Takashi Iwai <tiwai@suse.de>
2 Subject: ALSA: hda - Disable broken mic auto-muting in Realtek codes
3 Patch-mainline:
4 References: bnc#440626
5
6 The recent addition of automatic mic-muting is broken in some cases.
7 The code assumes that the pin nids <= 0x18, but the digital pins can
8 be less than 0x18.
9 Also, it assumes the front-mic being the internal mic, but it depends
10 on the hardware implementation actually.
11
12 Instead of complex case-fixes, better to disable the code as now.
13
14 Signed-off-by: Takashi Iwai <tiwai@suse.de>
15
16 ---
17 sound/pci/hda/patch_realtek.c | 6 ++++++
18 1 file changed, 6 insertions(+)
19
20 --- a/sound/pci/hda/patch_realtek.c
21 +++ b/sound/pci/hda/patch_realtek.c
22 @@ -829,6 +829,7 @@ static void alc_sku_automute(struct hda_
23 spec->jack_present ? 0 : PIN_OUT);
24 }
25
26 +#if 0 /* it's broken in some acses -- temporarily disabled */
27 static void alc_mic_automute(struct hda_codec *codec)
28 {
29 struct alc_spec *spec = codec->spec;
30 @@ -849,6 +850,9 @@ static void alc_mic_automute(struct hda_
31 snd_hda_codec_amp_stereo(codec, 0x0b, HDA_INPUT, capsrc_idx_fmic,
32 HDA_AMP_MUTE, present ? HDA_AMP_MUTE : 0);
33 }
34 +#else
35 +#define alc_mic_automute(codec) /* NOP */
36 +#endif /* disabled */
37
38 /* unsolicited event for HP jack sensing */
39 static void alc_sku_unsol_event(struct hda_codec *codec, unsigned int res)
40 @@ -1060,12 +1064,14 @@ do_sku:
41 AC_VERB_SET_UNSOLICITED_ENABLE,
42 AC_USRSP_EN | ALC880_HP_EVENT);
43
44 +#if 0 /* it's broken in some acses -- temporarily disabled */
45 if (spec->autocfg.input_pins[AUTO_PIN_MIC] &&
46 spec->autocfg.input_pins[AUTO_PIN_FRONT_MIC])
47 snd_hda_codec_write(codec,
48 spec->autocfg.input_pins[AUTO_PIN_MIC], 0,
49 AC_VERB_SET_UNSOLICITED_ENABLE,
50 AC_USRSP_EN | ALC880_MIC_EVENT);
51 +#endif /* disabled */
52
53 spec->unsol_event = alc_sku_unsol_event;
54 }