Commit ddb6ca75 authored by Takashi Iwai's avatar Takashi Iwai

ALSA: hda - Fix built-in mic on Compaq Presario CQ60

Compaq Presario CQ60 laptop with CX20561 gives a wrong pin for the
built-in mic NID 0x17 instead of NID 0x1d, and it results in the
non-working mic.  This patch just remaps the pin correctly via fixup.

Bugzilla: https://bugzilla.opensuse.org/show_bug.cgi?id=920604
Cc: <stable@vger.kernel.org>
Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
parent 59294a01
...@@ -223,6 +223,7 @@ enum { ...@@ -223,6 +223,7 @@ enum {
CXT_PINCFG_LENOVO_TP410, CXT_PINCFG_LENOVO_TP410,
CXT_PINCFG_LEMOTE_A1004, CXT_PINCFG_LEMOTE_A1004,
CXT_PINCFG_LEMOTE_A1205, CXT_PINCFG_LEMOTE_A1205,
CXT_PINCFG_COMPAQ_CQ60,
CXT_FIXUP_STEREO_DMIC, CXT_FIXUP_STEREO_DMIC,
CXT_FIXUP_INC_MIC_BOOST, CXT_FIXUP_INC_MIC_BOOST,
CXT_FIXUP_HEADPHONE_MIC_PIN, CXT_FIXUP_HEADPHONE_MIC_PIN,
...@@ -660,6 +661,15 @@ static const struct hda_fixup cxt_fixups[] = { ...@@ -660,6 +661,15 @@ static const struct hda_fixup cxt_fixups[] = {
.type = HDA_FIXUP_PINS, .type = HDA_FIXUP_PINS,
.v.pins = cxt_pincfg_lemote, .v.pins = cxt_pincfg_lemote,
}, },
[CXT_PINCFG_COMPAQ_CQ60] = {
.type = HDA_FIXUP_PINS,
.v.pins = (const struct hda_pintbl[]) {
/* 0x17 was falsely set up as a mic, it should 0x1d */
{ 0x17, 0x400001f0 },
{ 0x1d, 0x97a70120 },
{ }
}
},
[CXT_FIXUP_STEREO_DMIC] = { [CXT_FIXUP_STEREO_DMIC] = {
.type = HDA_FIXUP_FUNC, .type = HDA_FIXUP_FUNC,
.v.func = cxt_fixup_stereo_dmic, .v.func = cxt_fixup_stereo_dmic,
...@@ -769,6 +779,7 @@ static const struct hda_model_fixup cxt5047_fixup_models[] = { ...@@ -769,6 +779,7 @@ static const struct hda_model_fixup cxt5047_fixup_models[] = {
}; };
static const struct snd_pci_quirk cxt5051_fixups[] = { static const struct snd_pci_quirk cxt5051_fixups[] = {
SND_PCI_QUIRK(0x103c, 0x360b, "Compaq CQ60", CXT_PINCFG_COMPAQ_CQ60),
SND_PCI_QUIRK(0x17aa, 0x20f2, "Lenovo X200", CXT_PINCFG_LENOVO_X200), SND_PCI_QUIRK(0x17aa, 0x20f2, "Lenovo X200", CXT_PINCFG_LENOVO_X200),
{} {}
}; };
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment