[alsa-devel] Regarding Sound on Acer Aspire 6935G

Emilio López buhitoescolar at gmail.com
Wed Jun 24 21:33:26 CEST 2009


Well, I finally got it to work. I had to triplicate the
"spec->autocfg.hp_pins", I don't know why, but it made it work.

Here is the patch:

From: Emilio López <buhitoescolar at gmail.com>

Fix recording from internal microphone, make jack sensing mute all the
internal speakers.

Signed-off-by: Emilio López <buhitoescolar at gmail.com>
Tested-by: Emilio López <buhitoescolar at gmail.com>

---

diff -uprN alsa-driver/sound/pci/hda/patch_realtek.c
alsa-driver-patched/sound/pci/hda/patch_realtek.c
--- alsa-driver/sound/pci/hda/patch_realtek.c	2009-06-22
12:50:12.000000000 -0300
+++ alsa-driver-patched/sound/pci/hda/patch_realtek.c	2009-06-24
16:22:51.258368878 -0300
@@ -1471,6 +1471,10 @@ static struct hda_verb alc888_acer_aspir
 static struct hda_verb alc888_acer_aspire_6530g_verbs[] = {
 /* Bias voltage on for external mic port */
 	{0x18, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_IN | PIN_VREF80},
+/* Front Mic: set to PIN_IN (empty by default) */
+	{0x12, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_IN},
+/* Unselect Front Mic by default in input mixer 3 */
+	{0x22, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_MUTE(0xb)},
 /* Enable unsolicited event for HP jack */
 	{0x15, AC_VERB_SET_UNSOLICITED_ENABLE, ALC880_HP_EVENT | AC_USRSP_EN},
 /* Enable speaker output */
@@ -1639,6 +1643,19 @@ static void alc888_acer_aspire_4930g_ini
 	alc_automute_amp(codec);
 }

+static void alc888_acer_aspire_6530g_init_hook(struct hda_codec *codec)
+{
+	struct alc_spec *spec = codec->spec;
+
+	spec->autocfg.hp_pins[0] = 0x15;
+	spec->autocfg.hp_pins[1] = 0x15;
+	spec->autocfg.hp_pins[2] = 0x15;
+	spec->autocfg.speaker_pins[0] = 0x14;
+	spec->autocfg.speaker_pins[1] = 0x16;
+	spec->autocfg.speaker_pins[2] = 0x17;
+	alc_automute_amp(codec);
+}
+
 static void alc889_acer_aspire_8930g_init_hook(struct hda_codec *codec)
 {
 	struct alc_spec *spec = codec->spec;
@@ -9317,7 +9334,7 @@ static struct alc_config_preset alc883_p
 			ARRAY_SIZE(alc888_2_capture_sources),
 		.input_mux = alc888_acer_aspire_6530_sources,
 		.unsol_event = alc_automute_amp_unsol_event,
-		.init_hook = alc888_acer_aspire_4930g_init_hook,
+		.init_hook = alc888_acer_aspire_6530g_init_hook,
 	},
 	[ALC888_ACER_ASPIRE_8930G] = {
 		.mixers = { alc888_base_mixer,


More information about the Alsa-devel mailing list