ALSA: hda - Fix initial capture-source with auto-mic for Cxt auto-parser
authorTakashi Iwai <tiwai@suse.de>
Mon, 23 May 2011 18:27:02 +0000 (20:27 +0200)
committerTakashi Iwai <tiwai@suse.de>
Mon, 23 May 2011 18:27:02 +0000 (20:27 +0200)
Fix the initialization of capture-source route when auto-mic is enabled
for Conexant auto-parser.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/hda/patch_conexant.c

index cd1a93ae217094125f31be7e63e6db4583ae264e..e8dc736b2fc4d0caab44120752a1d5b0d309d1bd 100644 (file)
@@ -3697,13 +3697,14 @@ static int cx_auto_mux_enum_update(struct hda_codec *codec,
 {
        struct conexant_spec *spec = codec->spec;
        hda_nid_t adc;
+       int changed = 1;
 
        if (!imux->num_items)
                return 0;
        if (idx >= imux->num_items)
                idx = imux->num_items - 1;
        if (spec->cur_mux[0] == idx)
-               return 0;
+               changed = 0;
        adc = spec->imux_info[idx].adc;
        select_input_connection(codec, spec->imux_info[idx].adc,
                                spec->imux_info[idx].pin);
@@ -3716,7 +3717,7 @@ static int cx_auto_mux_enum_update(struct hda_codec *codec,
                                           spec->cur_adc_format);
        }
        spec->cur_mux[0] = idx;
-       return 1;
+       return changed;
 }
 
 static int cx_auto_mux_enum_put(struct snd_kcontrol *kcontrol,