summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2008-02-19 15:03:57 +0100
committerTakashi Iwai <tiwai@suse.de>2008-04-24 12:00:13 +0200
commit67ebcb0311110dc7268bb5b135bf437d8033337e (patch)
treeaa1077b7d255d2095777c8ad429e793870830ec1
parent[ALSA] hda-codec - Fix ALC268 capture source (diff)
downloadlinux-67ebcb0311110dc7268bb5b135bf437d8033337e.tar.xz
linux-67ebcb0311110dc7268bb5b135bf437d8033337e.zip
[ALSA] hda-codec - Don't create multiple capture streams for single inputs
When the device has only one input source, it makes no sense to have multiple capture streams. Signed-off-by: Takashi Iwai <tiwai@suse.de>
-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 630c7b22542a..2100ee480809 100644
--- a/sound/pci/hda/patch_realtek.c
+++ b/sound/pci/hda/patch_realtek.c
@@ -4950,7 +4950,7 @@ static int alc260_parse_auto_config(struct hda_codec *codec)
/* check whether NID 0x04 is valid */
wcap = get_wcaps(codec, 0x04);
wcap = (wcap & AC_WCAP_TYPE) >> AC_WCAP_TYPE_SHIFT; /* get type */
- if (wcap != AC_WID_AUD_IN) {
+ if (wcap != AC_WID_AUD_IN || spec->input_mux->num_items == 1) {
spec->adc_nids = alc260_adc_nids_alt;
spec->num_adc_nids = ARRAY_SIZE(alc260_adc_nids_alt);
spec->mixers[spec->num_mixers] = alc260_capture_alt_mixer;
@@ -10276,7 +10276,7 @@ static int patch_alc268(struct hda_codec *codec)
/* get type */
wcap = (wcap & AC_WCAP_TYPE) >> AC_WCAP_TYPE_SHIFT;
- if (wcap != AC_WID_AUD_IN) {
+ if (wcap != AC_WID_AUD_IN || spec->input_mux->num_items == 1) {
spec->adc_nids = alc268_adc_nids_alt;
spec->num_adc_nids = ARRAY_SIZE(alc268_adc_nids_alt);
spec->mixers[spec->num_mixers] =