Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 41c89ef3 authored by Takashi Iwai's avatar Takashi Iwai
Browse files

ALSA: hda - Fix mic attribute check for internal mics



Now Windows claims that the BIOS sets pins for internal mics to be
BOTH connection instead of FIXED.

Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
parent 9907790a
Loading
Loading
Loading
Loading
+5 −2
Original line number Diff line number Diff line
@@ -4648,8 +4648,11 @@ enum {
static int get_mic_pin_attr(unsigned int def_conf)
{
	unsigned int loc = get_defcfg_location(def_conf);
	if (get_defcfg_connect(def_conf) == AC_JACK_PORT_FIXED ||
	    (loc & 0x30) == AC_JACK_LOC_INTERNAL)
	unsigned int conn = get_defcfg_connect(def_conf);
	/* Windows may claim the internal mic to be BOTH, too */
	if (conn == AC_JACK_PORT_FIXED || conn == AC_JACK_PORT_BOTH)
		return MIC_ATTR_INT;
	if ((loc & 0x30) == AC_JACK_LOC_INTERNAL)
		return MIC_ATTR_INT;
	if ((loc & 0x30) == AC_JACK_LOC_SEPARATE)
		return MIC_ATTR_DOCK;