aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2008-01-11 11:38:35 -0500
committerJaroslav Kysela <perex@perex.cz>2008-01-31 11:29:55 -0500
commitce22e03e62fd37fb2612abb7af1c66cc17038606 (patch)
treee85f4a243b417654dff2c336bd532c8e926a5307
parent9c8f2abdc5723b454ef4bfe23ec33ae2a46f62fc (diff)
[ALSA] hda-codec - Don't build boost controls for digital mics
The ALC auto-probe creates mic boost controls automatically for the probed pins, but it assumes that they are analog mics. The digital mics have no boost controls and must be skipped. Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
-rw-r--r--sound/pci/hda/patch_realtek.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
index 4bc7f3daeab0..11bd68bb55f9 100644
--- a/sound/pci/hda/patch_realtek.c
+++ b/sound/pci/hda/patch_realtek.c
@@ -6111,7 +6111,7 @@ static int alc_auto_add_mic_boost(struct hda_codec *codec)
6111 hda_nid_t nid; 6111 hda_nid_t nid;
6112 6112
6113 nid = spec->autocfg.input_pins[AUTO_PIN_MIC]; 6113 nid = spec->autocfg.input_pins[AUTO_PIN_MIC];
6114 if (nid) { 6114 if (nid && (get_wcaps(codec, nid) & AC_WCAP_IN_AMP)) {
6115 err = add_control(spec, ALC_CTL_WIDGET_VOL, 6115 err = add_control(spec, ALC_CTL_WIDGET_VOL,
6116 "Mic Boost", 6116 "Mic Boost",
6117 HDA_COMPOSE_AMP_VAL(nid, 3, 0, HDA_INPUT)); 6117 HDA_COMPOSE_AMP_VAL(nid, 3, 0, HDA_INPUT));
@@ -6119,7 +6119,7 @@ static int alc_auto_add_mic_boost(struct hda_codec *codec)
6119 return err; 6119 return err;
6120 } 6120 }
6121 nid = spec->autocfg.input_pins[AUTO_PIN_FRONT_MIC]; 6121 nid = spec->autocfg.input_pins[AUTO_PIN_FRONT_MIC];
6122 if (nid) { 6122 if (nid && (get_wcaps(codec, nid) & AC_WCAP_IN_AMP)) {
6123 err = add_control(spec, ALC_CTL_WIDGET_VOL, 6123 err = add_control(spec, ALC_CTL_WIDGET_VOL,
6124 "Front Mic Boost", 6124 "Front Mic Boost",
6125 HDA_COMPOSE_AMP_VAL(nid, 3, 0, HDA_INPUT)); 6125 HDA_COMPOSE_AMP_VAL(nid, 3, 0, HDA_INPUT));