aboutsummaryrefslogtreecommitdiffstats
path: root/sound
diff options
context:
space:
mode:
authorLydia Wang <lydiawang@viatech.com.cn>2011-03-22 04:24:10 -0400
committerTakashi Iwai <tiwai@suse.de>2011-03-22 07:54:14 -0400
commit169222813eec8403c76394fb7b35ecab98e3c607 (patch)
tree9268af6e421e910e7f665340c9a1972e07217a0b /sound
parentab657e0cacc39d88145871c6a3c844597c02d406 (diff)
ALSA: hda - VIA: Fix invalid A-A path volume adjust issue
Modify vt_auto_create_analog_input_ctls() function to fix invalid a-a path volume adjust issue for VT1708S, VT1702 and VT1716S codecs. Signed-off-by: Lydia Wang <lydiawang@viatech.com.cn> Cc: <stable@kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound')
-rw-r--r--sound/pci/hda/patch_via.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/sound/pci/hda/patch_via.c b/sound/pci/hda/patch_via.c
index 23e58f090469..299a18b735a3 100644
--- a/sound/pci/hda/patch_via.c
+++ b/sound/pci/hda/patch_via.c
@@ -2456,7 +2456,14 @@ static int vt_auto_create_analog_input_ctls(struct hda_codec *codec,
2456 else 2456 else
2457 type_idx = 0; 2457 type_idx = 0;
2458 label = hda_get_autocfg_input_label(codec, cfg, i); 2458 label = hda_get_autocfg_input_label(codec, cfg, i);
2459 err = via_new_analog_input(spec, label, type_idx, idx, cap_nid); 2459 if (spec->codec_type == VT1708S ||
2460 spec->codec_type == VT1702 ||
2461 spec->codec_type == VT1716S)
2462 err = via_new_analog_input(spec, label, type_idx,
2463 idx+1, cap_nid);
2464 else
2465 err = via_new_analog_input(spec, label, type_idx,
2466 idx, cap_nid);
2460 if (err < 0) 2467 if (err < 0)
2461 return err; 2468 return err;
2462 snd_hda_add_imux_item(imux, label, idx, NULL); 2469 snd_hda_add_imux_item(imux, label, idx, NULL);