|
@@ -1553,7 +1553,7 @@ static int vt1708_auto_create_multi_out_ctls(struct via_spec *spec,
|
|
|
{
|
|
|
char name[32];
|
|
|
static const char *chname[4] = { "Front", "Surround", "C/LFE", "Side" };
|
|
|
- hda_nid_t nid, nid_vol = 0;
|
|
|
+ hda_nid_t nid, nid_vol, nid_vols[] = {0x17, 0x19, 0x1a, 0x1b};
|
|
|
int i, err;
|
|
|
|
|
|
for (i = 0; i <= AUTO_SEQ_SIDE; i++) {
|
|
@@ -1562,8 +1562,7 @@ static int vt1708_auto_create_multi_out_ctls(struct via_spec *spec,
|
|
|
if (!nid)
|
|
|
continue;
|
|
|
|
|
|
- if (i != AUTO_SEQ_FRONT)
|
|
|
- nid_vol = 0x18 + i;
|
|
|
+ nid_vol = nid_vols[i];
|
|
|
|
|
|
if (i == AUTO_SEQ_CENLFE) {
|
|
|
/* Center/LFE */
|
|
@@ -1595,13 +1594,13 @@ static int vt1708_auto_create_multi_out_ctls(struct via_spec *spec,
|
|
|
/* add control to mixer index 0 */
|
|
|
err = via_add_control(spec, VIA_CTL_WIDGET_VOL,
|
|
|
"Master Front Playback Volume",
|
|
|
- HDA_COMPOSE_AMP_VAL(0x17, 3, 0,
|
|
|
+ HDA_COMPOSE_AMP_VAL(nid_vol, 3, 0,
|
|
|
HDA_INPUT));
|
|
|
if (err < 0)
|
|
|
return err;
|
|
|
err = via_add_control(spec, VIA_CTL_WIDGET_MUTE,
|
|
|
"Master Front Playback Switch",
|
|
|
- HDA_COMPOSE_AMP_VAL(0x17, 3, 0,
|
|
|
+ HDA_COMPOSE_AMP_VAL(nid_vol, 3, 0,
|
|
|
HDA_INPUT));
|
|
|
if (err < 0)
|
|
|
return err;
|