summaryrefslogtreecommitdiffstats
path: root/sound/pci/hda
diff options
context:
space:
mode:
authorChenLi Tien <cltien@cmedia.com.tw>2005-03-24 20:47:35 +0100
committerJaroslav Kysela <perex@suse.cz>2005-05-29 09:00:21 +0200
commitd05b2817d859a2a2f2c3d5c056b688559fdbcc2b (patch)
tree0783e058f7650cafed38d092035c3e2e042cc57e /sound/pci/hda
parent[ALSA] Skip ac97 SPDIF controls (diff)
downloadlinux-d05b2817d859a2a2f2c3d5c056b688559fdbcc2b.tar.xz
linux-d05b2817d859a2a2f2c3d5c056b688559fdbcc2b.zip
[ALSA] fix multi-channel for model==full
HDA Codec driver The patch_cm9880.c can't play side/C/B channels from front panel jacks. I fixed it by adding select pin. Signed-off-by: ChenLi Tien <cltien@cmedia.com.tw> Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/hda')
-rw-r--r--sound/pci/hda/patch_cmedia.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/sound/pci/hda/patch_cmedia.c b/sound/pci/hda/patch_cmedia.c
index b7cc8e4bffb7..a44d64e828d5 100644
--- a/sound/pci/hda/patch_cmedia.c
+++ b/sound/pci/hda/patch_cmedia.c
@@ -278,8 +278,10 @@ static struct hda_verb cmi9880_basic_init[] = {
{ 0x0e, AC_VERB_SET_PIN_WIDGET_CONTROL, 0xc0 },
/* port-G for CLFE (rear panel) */
{ 0x1f, AC_VERB_SET_PIN_WIDGET_CONTROL, 0xc0 },
+ { 0x1f, AC_VERB_SET_CONNECT_SEL, 0x02 },
/* port-H for side (rear panel) */
{ 0x20, AC_VERB_SET_PIN_WIDGET_CONTROL, 0xc0 },
+ { 0x20, AC_VERB_SET_CONNECT_SEL, 0x01 },
/* port-C for line-in (rear panel) */
{ 0x0c, AC_VERB_SET_PIN_WIDGET_CONTROL, 0x20 },
/* port-B for mic-in (rear panel) with vref */
@@ -305,6 +307,10 @@ static struct hda_verb cmi9880_allout_init[] = {
{ 0x0e, AC_VERB_SET_PIN_WIDGET_CONTROL, 0xc0 },
/* port-G for CLFE (rear panel) */
{ 0x1f, AC_VERB_SET_PIN_WIDGET_CONTROL, 0xc0 },
+ { 0x1f, AC_VERB_SET_CONNECT_SEL, 0x02 },
+ /* port-H for side (rear panel) */
+ { 0x20, AC_VERB_SET_PIN_WIDGET_CONTROL, 0xc0 },
+ { 0x20, AC_VERB_SET_CONNECT_SEL, 0x01 },
/* port-C for surround (rear panel) */
{ 0x0c, AC_VERB_SET_PIN_WIDGET_CONTROL, 0xc0 },
/* port-B for mic-in (rear panel) with vref */