[alsa-devel] Fix capture mixers of ALC662 models

Takashi Iwai tiwai at suse.de
Wed Dec 19 14:07:23 CET 2007


At Tue, 18 Dec 2007 22:40:31 -0200,
Herton Ronaldo Krzesinski wrote:
> 
> The below patches fixes capture mixers of ALC662 models. The first one applies 
> to current hg tree, the second one to Linus tree (2.6.24-rcX).
> 
> The commit that added support for ASUS P701 eeepc also changed the
> mixers of other ALC662 models, duplicating entries for the Capture
> items, making them to not work anymore. This fixes it by removing
> duplicated entries using where possible the common alc662_capture_mixer.
> Also alc662_capture_mixer should use alc662* functions and not alc882
> (I checked /proc/asound/card0/codec* on an eepc model and it's ok).
> 
> Signed-off-by: Herton Ronaldo Krzesinski <herton at mandriva.com>

Thanks for the patch.
It's mostly OK, but the capture-related elements should be removed
from alc662_base_mixer, too.

Could you check the patch (against HG) below works even with
model=6stack-dig?


Takashi

diff -r 6c70857ab613 pci/hda/patch_realtek.c
--- a/pci/hda/patch_realtek.c	Wed Dec 19 15:37:49 2007 +0100
+++ b/pci/hda/patch_realtek.c	Wed Dec 19 15:55:48 2007 +0100
@@ -12335,18 +12335,6 @@ static struct snd_kcontrol_new alc662_ba
 	HDA_CODEC_MUTE("Mic Playback Switch", 0xb, 0x0, HDA_INPUT),
 	HDA_CODEC_VOLUME("Front Mic Playback Volume", 0xb, 0x01, HDA_INPUT),
 	HDA_CODEC_MUTE("Front Mic Playback Switch", 0xb, 0x01, HDA_INPUT),
-
-	/* Capture mixer control */
-	HDA_CODEC_VOLUME("Capture Volume", 0x09, 0x0, HDA_INPUT),
-	HDA_CODEC_MUTE("Capture Switch", 0x09, 0x0, HDA_INPUT),
-	{
-		.iface = SNDRV_CTL_ELEM_IFACE_MIXER,
-		.name = "Capture Source",
-		.count = 1,
-		.info = alc_mux_enum_info,
-		.get = alc_mux_enum_get,
-		.put = alc_mux_enum_put,
-	},
 	{ } /* end */
 };
 
@@ -12364,17 +12352,6 @@ static struct snd_kcontrol_new alc662_3S
 	HDA_CODEC_MUTE("Front Mic Playback Switch", 0x0b, 0x1, HDA_INPUT),
 	HDA_CODEC_VOLUME("PC Speaker Playback Volume", 0x0b, 0x05, HDA_INPUT),
 	HDA_CODEC_MUTE("PC Speaker Playback Switch", 0x0b, 0x05, HDA_INPUT),
-	HDA_CODEC_VOLUME("Capture Volume", 0x09, 0x0, HDA_INPUT),
-	HDA_CODEC_MUTE("Capture Switch", 0x09, 0x0, HDA_INPUT),
-	{
-		.iface = SNDRV_CTL_ELEM_IFACE_MIXER,
-		/* .name = "Capture Source", */
-		.name = "Input Source",
-		.count = 1,
-		.info = alc662_mux_enum_info,
-		.get = alc662_mux_enum_get,
-		.put = alc662_mux_enum_put,
-	},
 	{ } /* end */
 };
 
@@ -12398,17 +12375,6 @@ static struct snd_kcontrol_new alc662_3S
 	HDA_CODEC_MUTE("Front Mic Playback Switch", 0x0b, 0x1, HDA_INPUT),
 	HDA_CODEC_VOLUME("PC Speaker Playback Volume", 0x0b, 0x05, HDA_INPUT),
 	HDA_CODEC_MUTE("PC Speaker Playback Switch", 0x0b, 0x05, HDA_INPUT),
-	HDA_CODEC_VOLUME("Capture Volume", 0x09, 0x0, HDA_INPUT),
-	HDA_CODEC_MUTE("Capture Switch", 0x09, 0x0, HDA_INPUT),
-	{
-		.iface = SNDRV_CTL_ELEM_IFACE_MIXER,
-		/* .name = "Capture Source", */
-		.name = "Input Source",
-		.count = 1,
-		.info = alc662_mux_enum_info,
-		.get = alc662_mux_enum_get,
-		.put = alc662_mux_enum_put,
-	},
 	{ } /* end */
 };
 
@@ -12422,17 +12388,6 @@ static struct snd_kcontrol_new alc662_le
 	HDA_CODEC_MUTE("Line Playback Switch", 0x0b, 0x02, HDA_INPUT),
 	HDA_CODEC_VOLUME("Mic Playback Volume", 0x0b, 0x1, HDA_INPUT),
 	HDA_CODEC_MUTE("Mic Playback Switch", 0x0b, 0x1, HDA_INPUT),
-	HDA_CODEC_VOLUME("Capture Volume", 0x09, 0x0, HDA_INPUT),
-	HDA_CODEC_MUTE("Capture Switch", 0x09, 0x0, HDA_INPUT),
-	{
-		.iface = SNDRV_CTL_ELEM_IFACE_MIXER,
-		/* .name = "Capture Source", */
-		.name = "Input Source",
-		.count = 1,
-		.info = alc662_mux_enum_info,
-		.get = alc662_mux_enum_get,
-		.put = alc662_mux_enum_put,
-	},
 	{ } /* end */
 };
 
@@ -12598,9 +12553,9 @@ static struct snd_kcontrol_new alc662_ca
 		/* .name = "Capture Source", */
 		.name = "Input Source",
 		.count = 1,
-		.info = alc882_mux_enum_info,
-		.get = alc882_mux_enum_get,
-		.put = alc882_mux_enum_put,
+		.info = alc662_mux_enum_info,
+		.get = alc662_mux_enum_get,
+		.put = alc662_mux_enum_put,
 	},
 	{ } /* end */
 };




More information about the Alsa-devel mailing list