ALSA: hda - Update jack-sense info even when no automute is set
The internal states, jack_present and line_jack_present should be updated upon unsolicited events even if no automute is set. Otherwise the wrong state is referred when the automute behavior is changed by the mixer control. Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
Родитель
675c1aa3c4
Коммит
3c715a9884
|
@ -565,11 +565,11 @@ static void alc_hp_automute(struct hda_codec *codec)
|
|||
{
|
||||
struct alc_spec *spec = codec->spec;
|
||||
|
||||
if (!spec->automute)
|
||||
return;
|
||||
spec->jack_present =
|
||||
detect_jacks(codec, ARRAY_SIZE(spec->autocfg.hp_pins),
|
||||
spec->autocfg.hp_pins);
|
||||
if (!spec->automute)
|
||||
return;
|
||||
update_speakers(codec);
|
||||
}
|
||||
|
||||
|
@ -578,11 +578,11 @@ static void alc_line_automute(struct hda_codec *codec)
|
|||
{
|
||||
struct alc_spec *spec = codec->spec;
|
||||
|
||||
if (!spec->automute || !spec->detect_line)
|
||||
return;
|
||||
spec->line_jack_present =
|
||||
detect_jacks(codec, ARRAY_SIZE(spec->autocfg.line_out_pins),
|
||||
spec->autocfg.line_out_pins);
|
||||
if (!spec->automute || !spec->detect_line)
|
||||
return;
|
||||
update_speakers(codec);
|
||||
}
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче