[alsa-devel] Conexant 5051 lenovo-x200 fixes

Takashi Iwai tiwai at suse.de
Wed Aug 24 10:59:19 CEST 2011


At Wed, 24 Aug 2011 07:53:00 +0200,
Takashi Iwai wrote:
> 
> > In Rec screen of Alsamixer all three mic volume and boost controls are present.
> > Autosensing of Dock Mic works, and so do its controls. Internal mic works too, but
> > autosensing of Ext mic does not.
> 
> Does ext-mic pin (0x18) jack-sense work with hda-emu at all?
> When this pin is selected, the recording is done via another ADC
> (0x15) instead of the one for int-mic and dock-mic (0x14).
> Try to reopen the recording stream when you plug the ext-mic.
> It might be a bug in the dynamic ADC-switching of the running stream.

The patch below should fix the ADC-switching behavior.


Takashi

---
From: Takashi Iwai <tiwai at suse.de>
Subject: [PATCH] ALSA: hda/conexant - Enable ADC-switching for auto-mic mode,
 too

The ADC-switching can work also in the auto-mic mode, too.

Signed-off-by: Takashi Iwai <tiwai at suse.de>
---
 sound/pci/hda/patch_conexant.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/sound/pci/hda/patch_conexant.c b/sound/pci/hda/patch_conexant.c
index 4c462c3..5616444 100644
--- a/sound/pci/hda/patch_conexant.c
+++ b/sound/pci/hda/patch_conexant.c
@@ -3866,7 +3866,7 @@ static void cx_auto_parse_input(struct hda_codec *codec)
 	}
 	if (imux->num_items >= 2 && cfg->num_inputs == imux->num_items)
 		cx_auto_check_auto_mic(codec);
-	if (imux->num_items > 1 && !spec->auto_mic) {
+	if (imux->num_items > 1) {
 		for (i = 1; i < imux->num_items; i++) {
 			if (spec->imux_info[i].adc != spec->imux_info[0].adc) {
 				spec->adc_switching = 1;
-- 
1.7.6



More information about the Alsa-devel mailing list