summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2006-01-24 12:34:34 +0300
committerJaroslav Kysela <perex@suse.cz>2006-02-01 15:09:20 +0300
commitad0651f97a3f8c5982921cb57fbedc877279e03d (patch)
treedbada796d7eeb06436ce42862be0c262468373b0
parent802c00f2f3700423df06a1149c23cd60dd59159c (diff)
downloadlinux-ad0651f97a3f8c5982921cb57fbedc877279e03d.tar.xz
[ALSA] hda-codec - Fix max_channels computation for STAC92xx codecs
Modules: HDA Codec driver Fix max_channels computation for STAC92xx codecs in the case only HP pin without line-out pins is detected in the default pin config. Signed-off-by: Takashi Iwai <tiwai@suse.de>
-rw-r--r--sound/pci/hda/patch_sigmatel.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/sound/pci/hda/patch_sigmatel.c b/sound/pci/hda/patch_sigmatel.c
index d5342d20bd81..f7892a5b7757 100644
--- a/sound/pci/hda/patch_sigmatel.c
+++ b/sound/pci/hda/patch_sigmatel.c
@@ -691,7 +691,13 @@ static int stac92xx_auto_fill_dac_nids(struct hda_codec *codec, const struct aut
AC_VERB_GET_CONNECT_LIST, 0) & 0xff;
}
- spec->multiout.num_dacs = cfg->line_outs;
+ if (cfg->line_outs)
+ spec->multiout.num_dacs = cfg->line_outs;
+ else if (cfg->hp_pin) {
+ spec->multiout.dac_nids[0] = snd_hda_codec_read(codec, cfg->hp_pin, 0,
+ AC_VERB_GET_CONNECT_LIST, 0) & 0xff;
+ spec->multiout.num_dacs = 1;
+ }
return 0;
}