summaryrefslogtreecommitdiff
path: root/sound
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2013-01-07 16:32:11 +0100
committerTakashi Iwai <tiwai@suse.de>2013-01-12 08:44:15 +0100
commitd12daf6f41693b6b34351b37b6d05d1a6f9b3472 (patch)
tree3915b917de9bb76460ccab9c64874f8529e01a6b /sound
parentfb690cf58278163b464e3ea8b76ad31e07fb140c (diff)
downloadlwn-d12daf6f41693b6b34351b37b6d05d1a6f9b3472.tar.gz
lwn-d12daf6f41693b6b34351b37b6d05d1a6f9b3472.zip
ALSA: hda - Add a flag to suppress mic auto-switch
Add a new flag spec->suppress_mic_auto_switch for codecs that don't support unsol events properly like VT1708. Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound')
-rw-r--r--sound/pci/hda/hda_generic.c3
-rw-r--r--sound/pci/hda/hda_generic.h1
2 files changed, 4 insertions, 0 deletions
diff --git a/sound/pci/hda/hda_generic.c b/sound/pci/hda/hda_generic.c
index 8e7ce7d2c138..b488c62ed97d 100644
--- a/sound/pci/hda/hda_generic.c
+++ b/sound/pci/hda/hda_generic.c
@@ -3034,6 +3034,9 @@ static int check_auto_mic_availability(struct hda_codec *codec)
unsigned int types;
int i, num_pins;
+ if (spec->suppress_auto_mic)
+ return 0;
+
types = 0;
num_pins = 0;
for (i = 0; i < cfg->num_inputs; i++) {
diff --git a/sound/pci/hda/hda_generic.h b/sound/pci/hda/hda_generic.h
index 343195c827e4..1763e33b90ef 100644
--- a/sound/pci/hda/hda_generic.h
+++ b/sound/pci/hda/hda_generic.h
@@ -175,6 +175,7 @@ struct hda_gen_spec {
unsigned int automute_speaker_possible:1; /* there are speakers and either LO or HP */
unsigned int automute_lo_possible:1; /* there are line outs and HP */
unsigned int keep_vref_in_automute:1; /* Don't clear VREF in automute */
+ unsigned int suppress_auto_mic:1; /* suppress input jack auto switch */
unsigned int line_in_auto_switch:1; /* allow line-in auto switch */
/* other flags */