ALSA: hda - Fix NID association for capture mixers
Fix the wrong implementation of NID <-> kctl mapping for capture mixers
introduced by the ocmmit 5b0cb1d850
.
So far, the driver returns an error at probe.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
@@ -753,6 +753,7 @@ static int build_input(struct hda_codec *codec)
|
||||
spec->capture_bind[1] = make_bind_capture(codec, &snd_hda_bind_vol);
|
||||
for (i = 0; i < 2; i++) {
|
||||
struct snd_kcontrol *kctl;
|
||||
int n;
|
||||
if (!spec->capture_bind[i])
|
||||
return -ENOMEM;
|
||||
kctl = snd_ctl_new1(&cs_capture_ctls[i], codec);
|
||||
@@ -762,10 +763,13 @@ static int build_input(struct hda_codec *codec)
|
||||
err = snd_hda_ctl_add(codec, 0, kctl);
|
||||
if (err < 0)
|
||||
return err;
|
||||
err = snd_hda_add_nids(codec, kctl, 0, spec->adc_nid,
|
||||
spec->num_inputs);
|
||||
if (err < 0)
|
||||
return err;
|
||||
for (n = 0; n < AUTO_PIN_LAST; n++) {
|
||||
if (!spec->adc_nid[n])
|
||||
continue;
|
||||
err = snd_hda_add_nid(codec, kctl, 0, spec->adc_nid[i]);
|
||||
if (err < 0)
|
||||
return err;
|
||||
}
|
||||
}
|
||||
|
||||
if (spec->num_inputs > 1 && !spec->mic_detect) {
|
||||
|
Reference in New Issue
Block a user