Commit 34cdf405 authored by Chris Chiu's avatar Chris Chiu Committed by Takashi Iwai

ALSA: hda/realtek: Remove dummy lineout on Acer TravelMate P648/P658

Acer TravelMate laptops P648/P658 series with codec ALC282 only have
one physical jack for headset but there's a confusing lineout pin on
NID 0x1b reported. Audio applications hence misunderstand that there
are a speaker and a lineout, and take the lineout as the default audio
output.

Add a new quirk to remove the useless lineout and enable the pin 0x18
for jack sensing and headset microphone.
Signed-off-by: default avatarChris Chiu <chiu@endlessos.org>
Signed-off-by: default avatarJian-Hong Pan <jhp@endlessos.org>
Cc: <stable@vger.kernel.org>
Link: https://lore.kernel.org/r/20201216125200.27053-1-chiu@endlessos.orgSigned-off-by: default avatarTakashi Iwai <tiwai@suse.de>
parent 598100be
...@@ -6368,6 +6368,7 @@ enum { ...@@ -6368,6 +6368,7 @@ enum {
ALC287_FIXUP_HP_GPIO_LED, ALC287_FIXUP_HP_GPIO_LED,
ALC256_FIXUP_HP_HEADSET_MIC, ALC256_FIXUP_HP_HEADSET_MIC,
ALC236_FIXUP_DELL_AIO_HEADSET_MIC, ALC236_FIXUP_DELL_AIO_HEADSET_MIC,
ALC282_FIXUP_ACER_DISABLE_LINEOUT,
}; };
static const struct hda_fixup alc269_fixups[] = { static const struct hda_fixup alc269_fixups[] = {
...@@ -7791,6 +7792,16 @@ static const struct hda_fixup alc269_fixups[] = { ...@@ -7791,6 +7792,16 @@ static const struct hda_fixup alc269_fixups[] = {
.chained = true, .chained = true,
.chain_id = ALC255_FIXUP_DELL1_MIC_NO_PRESENCE .chain_id = ALC255_FIXUP_DELL1_MIC_NO_PRESENCE
}, },
[ALC282_FIXUP_ACER_DISABLE_LINEOUT] = {
.type = HDA_FIXUP_PINS,
.v.pins = (const struct hda_pintbl[]) {
{ 0x1b, 0x411111f0 },
{ 0x18, 0x01a1913c }, /* use as headset mic, without its own jack detect */
{ },
},
.chained = true,
.chain_id = ALC269_FIXUP_HEADSET_MODE
},
}; };
static const struct snd_pci_quirk alc269_fixup_tbl[] = { static const struct snd_pci_quirk alc269_fixup_tbl[] = {
...@@ -8564,6 +8575,22 @@ static const struct snd_hda_pin_quirk alc269_pin_fixup_tbl[] = { ...@@ -8564,6 +8575,22 @@ static const struct snd_hda_pin_quirk alc269_pin_fixup_tbl[] = {
{0x12, 0x90a60140}, {0x12, 0x90a60140},
{0x19, 0x04a11030}, {0x19, 0x04a11030},
{0x21, 0x04211020}), {0x21, 0x04211020}),
SND_HDA_PIN_QUIRK(0x10ec0282, 0x1025, "Acer", ALC282_FIXUP_ACER_DISABLE_LINEOUT,
ALC282_STANDARD_PINS,
{0x12, 0x90a609c0},
{0x18, 0x03a11830},
{0x19, 0x04a19831},
{0x1a, 0x0481303f},
{0x1b, 0x04211020},
{0x21, 0x0321101f}),
SND_HDA_PIN_QUIRK(0x10ec0282, 0x1025, "Acer", ALC282_FIXUP_ACER_DISABLE_LINEOUT,
ALC282_STANDARD_PINS,
{0x12, 0x90a60940},
{0x18, 0x03a11830},
{0x19, 0x04a19831},
{0x1a, 0x0481303f},
{0x1b, 0x04211020},
{0x21, 0x0321101f}),
SND_HDA_PIN_QUIRK(0x10ec0283, 0x1028, "Dell", ALC269_FIXUP_DELL1_MIC_NO_PRESENCE, SND_HDA_PIN_QUIRK(0x10ec0283, 0x1028, "Dell", ALC269_FIXUP_DELL1_MIC_NO_PRESENCE,
ALC282_STANDARD_PINS, ALC282_STANDARD_PINS,
{0x12, 0x90a60130}, {0x12, 0x90a60130},
......
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