浏览代码

ALSA: hda - Update automute / automic upon jack retasking

When a multi-io jack is switched to another direction, call the
automute and autoswitch update functions, as this jack won't be used
as the headphone or the mic jack that may turn off others.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Takashi Iwai 13 年之前
父节点
当前提交
a365fed980
共有 1 个文件被更改,包括 6 次插入0 次删除
  1. 6 0
      sound/pci/hda/hda_generic.c

+ 6 - 0
sound/pci/hda/hda_generic.c

@@ -1767,6 +1767,12 @@ static int set_multi_io(struct hda_codec *codec, int idx, bool output)
 		snd_hda_activate_path(codec, path, false, true);
 		set_pin_target(codec, nid, spec->multi_io[idx].ctl_in, true);
 	}
+
+	/* update jack retasking in case it modifies any of them */
+	snd_hda_gen_hp_automute(codec, NULL);
+	snd_hda_gen_line_automute(codec, NULL);
+	snd_hda_gen_mic_autoswitch(codec, NULL);
+
 	return 0;
 }