瀏覽代碼

[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>
ChenLi Tien 20 年之前
父節點
當前提交
d05b2817d8
共有 1 個文件被更改,包括 6 次插入0 次删除
  1. 6 0
      sound/pci/hda/patch_cmedia.c

+ 6 - 0
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 */