aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2010-03-02 05:14:01 -0500
committerTakashi Iwai <tiwai@suse.de>2010-03-02 05:14:01 -0500
commit20645d70bdcdcc29b1b92011780d233008a8adcf (patch)
treee8b03a6e98fd27222f2f3056e714e0d0fe4c252d
parent61c2d2b5e7241d4410ab8227ef4f76c1aba8210b (diff)
ALSA: hda - Add missing hp_pins definitions for ALC269 quirks
In 2.6.33 ACL269 unsol event handler was changed to look up the pre-defined pins, but the headphone pins aren't defined properly in each quirk. This patch adds the missing definitions, and fixes the speaker auto-mute regression on some ASUS (and possibly other) laptops. Signed-off-by: Takashi Iwai <tiwai@suse.de> Cc: <stable@kernel.org>
-rw-r--r--sound/pci/hda/patch_realtek.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
index e8cbe216e912..b9f4689ccd9a 100644
--- a/sound/pci/hda/patch_realtek.c
+++ b/sound/pci/hda/patch_realtek.c
@@ -13561,6 +13561,8 @@ static void alc269_lifebook_unsol_event(struct hda_codec *codec,
13561static void alc269_quanta_fl1_setup(struct hda_codec *codec) 13561static void alc269_quanta_fl1_setup(struct hda_codec *codec)
13562{ 13562{
13563 struct alc_spec *spec = codec->spec; 13563 struct alc_spec *spec = codec->spec;
13564 spec->autocfg.hp_pins[0] = 0x15;
13565 spec->autocfg.speaker_pins[0] = 0x14;
13564 spec->ext_mic.pin = 0x18; 13566 spec->ext_mic.pin = 0x18;
13565 spec->ext_mic.mux_idx = 0; 13567 spec->ext_mic.mux_idx = 0;
13566 spec->int_mic.pin = 0x19; 13568 spec->int_mic.pin = 0x19;
@@ -13656,6 +13658,8 @@ static void alc269_laptop_unsol_event(struct hda_codec *codec,
13656static void alc269_laptop_dmic_setup(struct hda_codec *codec) 13658static void alc269_laptop_dmic_setup(struct hda_codec *codec)
13657{ 13659{
13658 struct alc_spec *spec = codec->spec; 13660 struct alc_spec *spec = codec->spec;
13661 spec->autocfg.hp_pins[0] = 0x15;
13662 spec->autocfg.speaker_pins[0] = 0x14;
13659 spec->ext_mic.pin = 0x18; 13663 spec->ext_mic.pin = 0x18;
13660 spec->ext_mic.mux_idx = 0; 13664 spec->ext_mic.mux_idx = 0;
13661 spec->int_mic.pin = 0x12; 13665 spec->int_mic.pin = 0x12;
@@ -13666,6 +13670,8 @@ static void alc269_laptop_dmic_setup(struct hda_codec *codec)
13666static void alc269vb_laptop_dmic_setup(struct hda_codec *codec) 13670static void alc269vb_laptop_dmic_setup(struct hda_codec *codec)
13667{ 13671{
13668 struct alc_spec *spec = codec->spec; 13672 struct alc_spec *spec = codec->spec;
13673 spec->autocfg.hp_pins[0] = 0x15;
13674 spec->autocfg.speaker_pins[0] = 0x14;
13669 spec->ext_mic.pin = 0x18; 13675 spec->ext_mic.pin = 0x18;
13670 spec->ext_mic.mux_idx = 0; 13676 spec->ext_mic.mux_idx = 0;
13671 spec->int_mic.pin = 0x12; 13677 spec->int_mic.pin = 0x12;
@@ -13676,6 +13682,8 @@ static void alc269vb_laptop_dmic_setup(struct hda_codec *codec)
13676static void alc269_laptop_amic_setup(struct hda_codec *codec) 13682static void alc269_laptop_amic_setup(struct hda_codec *codec)
13677{ 13683{
13678 struct alc_spec *spec = codec->spec; 13684 struct alc_spec *spec = codec->spec;
13685 spec->autocfg.hp_pins[0] = 0x15;
13686 spec->autocfg.speaker_pins[0] = 0x14;
13679 spec->ext_mic.pin = 0x18; 13687 spec->ext_mic.pin = 0x18;
13680 spec->ext_mic.mux_idx = 0; 13688 spec->ext_mic.mux_idx = 0;
13681 spec->int_mic.pin = 0x19; 13689 spec->int_mic.pin = 0x19;