Explorar o código

ALSA: hda - Fix ALC662 DAC mixer mutes also for auto config model

In previous change "[ALSA] hda-codec - Fix ALC662 DAC mixer mutes", I
missed to fix the mixer mute switches also for the auto config model of
ALC662. Now mute for mixer items "Front", "Surround", "Center" and "LFE"
when available will work too with "auto" model.

Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com.br>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Herton Ronaldo Krzesinski %!s(int64=16) %!d(string=hai) anos
pai
achega
b69ce01ae4
Modificáronse 1 ficheiros con 7 adicións e 7 borrados
  1. 7 7
      sound/pci/hda/patch_realtek.c

+ 7 - 7
sound/pci/hda/patch_realtek.c

@@ -15973,15 +15973,15 @@ static int alc662_auto_create_multi_out_ctls(struct alc_spec *spec,
 							      HDA_OUTPUT));
 							      HDA_OUTPUT));
 			if (err < 0)
 			if (err < 0)
 				return err;
 				return err;
-			err = add_control(spec, ALC_CTL_BIND_MUTE,
+			err = add_control(spec, ALC_CTL_WIDGET_MUTE,
 					  "Center Playback Switch",
 					  "Center Playback Switch",
-					  HDA_COMPOSE_AMP_VAL(nid, 1, 2,
+					  HDA_COMPOSE_AMP_VAL(0x0e, 1, 0,
 							      HDA_INPUT));
 							      HDA_INPUT));
 			if (err < 0)
 			if (err < 0)
 				return err;
 				return err;
-			err = add_control(spec, ALC_CTL_BIND_MUTE,
+			err = add_control(spec, ALC_CTL_WIDGET_MUTE,
 					  "LFE Playback Switch",
 					  "LFE Playback Switch",
-					  HDA_COMPOSE_AMP_VAL(nid, 2, 2,
+					  HDA_COMPOSE_AMP_VAL(0x0e, 2, 0,
 							      HDA_INPUT));
 							      HDA_INPUT));
 			if (err < 0)
 			if (err < 0)
 				return err;
 				return err;
@@ -15993,9 +15993,9 @@ static int alc662_auto_create_multi_out_ctls(struct alc_spec *spec,
 			if (err < 0)
 			if (err < 0)
 				return err;
 				return err;
 			sprintf(name, "%s Playback Switch", chname[i]);
 			sprintf(name, "%s Playback Switch", chname[i]);
-			err = add_control(spec, ALC_CTL_BIND_MUTE, name,
-					  HDA_COMPOSE_AMP_VAL(nid, 3, 2,
-							      HDA_INPUT));
+			err = add_control(spec, ALC_CTL_WIDGET_MUTE, name,
+				HDA_COMPOSE_AMP_VAL(alc880_idx_to_mixer(i),
+						    3, 0, HDA_INPUT));
 			if (err < 0)
 			if (err < 0)
 				return err;
 				return err;
 		}
 		}