/* select the given imux item; either unmute exclusively or select the route */
static int alc_mux_select(struct hda_codec *codec, unsigned int adc_idx,
- unsigned int idx, bool force)
+ unsigned int idx)
{
struct alc_spec *spec = codec->spec;
const struct hda_input_mux *imux;
if (idx >= imux->num_items)
idx = imux->num_items - 1;
- if (spec->cur_mux[adc_idx] == idx && !force)
+ if (spec->cur_mux[adc_idx] == idx)
return 0;
path = get_nid_path(codec, spec->imux_pins[spec->cur_mux[adc_idx]],
struct hda_codec *codec = snd_kcontrol_chip(kcontrol);
unsigned int adc_idx = snd_ctl_get_ioffidx(kcontrol, &ucontrol->id);
return alc_mux_select(codec, adc_idx,
- ucontrol->value.enumerated.item[0], false);
+ ucontrol->value.enumerated.item[0]);
}
/*
for (i = spec->am_num_entries - 1; i > 0; i--) {
if (snd_hda_jack_detect(codec, spec->am_entry[i].pin)) {
- alc_mux_select(codec, 0, spec->am_entry[i].idx, false);
+ alc_mux_select(codec, 0, spec->am_entry[i].idx);
return;
}
}
- alc_mux_select(codec, 0, spec->am_entry[0].idx, false);
+ alc_mux_select(codec, 0, spec->am_entry[0].idx);
}
/* update the master volume per volume-knob's unsol event */