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

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
...@@ -4648,8 +4648,11 @@ enum { ...@@ -4648,8 +4648,11 @@ enum {
static int get_mic_pin_attr(unsigned int def_conf) static int get_mic_pin_attr(unsigned int def_conf)
{ {
unsigned int loc = get_defcfg_location(def_conf); unsigned int loc = get_defcfg_location(def_conf);
if (get_defcfg_connect(def_conf) == AC_JACK_PORT_FIXED || unsigned int conn = get_defcfg_connect(def_conf);
(loc & 0x30) == AC_JACK_LOC_INTERNAL) /* 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; return MIC_ATTR_INT;
if ((loc & 0x30) == AC_JACK_LOC_SEPARATE) if ((loc & 0x30) == AC_JACK_LOC_SEPARATE)
return MIC_ATTR_DOCK; return MIC_ATTR_DOCK;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment