ALSA: hda/sigmatel - Allow auto-switching for dock line-in of HP laptops
authorTakashi Iwai <tiwai@suse.de>
Thu, 27 Feb 2014 15:24:53 +0000 (16:24 +0100)
committerTakashi Iwai <tiwai@suse.de>
Thu, 27 Feb 2014 15:24:53 +0000 (16:24 +0100)
Many HP laptops with STAC codecs have a docking station port and BIOS
sets the pins for the input on the dock as a line in.  Because the
generic parser doesn't handle a line in pin as auto-switchable, this
resulted in the manual capture source selection on these laptops.

However, from the usability POV, the automatic switching is easier.
This patch adds the line_in_auto_switch hint in the fixup function for
these laptops.  Even if no dock port is present, this should be
harmless as the generic parser allows the auto-switching only in a
limited situation (all three pins are located in different
positions).

Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/hda/patch_sigmatel.c

index f3784808758ea8c66d60272bf8bb94a60fdb2423..75515b4940341a8599219f6a3ff2ee741b9f8138 100644 (file)
@@ -2089,6 +2089,9 @@ static void stac92hd83xxx_fixup_hp(struct hda_codec *codec,
                codec_dbg(codec, "mute LED gpio %d polarity %d\n",
                                spec->gpio_led,
                                spec->gpio_led_polarity);
+
+       /* allow auto-switching of dock line-in */
+       spec->gen.line_in_auto_switch = true;
 }
 
 static void stac92hd83xxx_fixup_hp_zephyr(struct hda_codec *codec,