diff mbox series

ALSA: hda/realtek: ALC285 Thinkpad jack pin quirk is unreachable

Message ID YI0oefvTYn8URYDb@yoga (mailing list archive)
State Accepted
Commit 266fd994b2b0ab7ba3e5541868838ce30775964b
Headers show
Series ALSA: hda/realtek: ALC285 Thinkpad jack pin quirk is unreachable | expand

Commit Message

Sami Loone May 1, 2021, 10:07 a.m. UTC
In 07d9e69cf34a ("ALSA: hda/realtek: fix static noise on ALC285 Lenovo
laptops") an existing Lenovo quirk was made more generic by removing a
0x12 pin requirement from the entry. This made the second chance table
Thinkpad jack entry unreachable as the pin configurations became
identical.

Revert the 0x12 pin requirement removal and move Thinkpad jack pin quirk
back to the primary pin table as they can co-exist when more specific
configurations come first.

Add a more targeted pin quirk for Lenovo devices that have 0x12 as
0x40000000.

Tested on Yoga 6 (AMD) laptop.

Fixes: 07d9e69cf34a ("ALSA: hda/realtek: fix static noise on ALC285 Lenovo laptops")
Signed-off-by: Sami Loone <sami@loone.fi>
---
 sound/pci/hda/patch_realtek.c | 14 ++++++++++----
 1 file changed, 10 insertions(+), 4 deletions(-)

Comments

Takashi Iwai May 3, 2021, 8:40 a.m. UTC | #1
On Sat, 01 May 2021 12:07:53 +0200,
Sami Loone wrote:
> 
> In 07d9e69cf34a ("ALSA: hda/realtek: fix static noise on ALC285 Lenovo
> laptops") an existing Lenovo quirk was made more generic by removing a
> 0x12 pin requirement from the entry. This made the second chance table
> Thinkpad jack entry unreachable as the pin configurations became
> identical.
> 
> Revert the 0x12 pin requirement removal and move Thinkpad jack pin quirk
> back to the primary pin table as they can co-exist when more specific
> configurations come first.
> 
> Add a more targeted pin quirk for Lenovo devices that have 0x12 as
> 0x40000000.
> 
> Tested on Yoga 6 (AMD) laptop.
> 
> Fixes: 07d9e69cf34a ("ALSA: hda/realtek: fix static noise on ALC285 Lenovo laptops")
> Signed-off-by: Sami Loone <sami@loone.fi>

Applied now.
The commit ID doesn't exist in the upstream, so I corrected it.


thanks,

Takashi
diff mbox series

Patch

diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
index bd7bfd7c9ee7..a0fa99a31c23 100644
--- a/sound/pci/hda/patch_realtek.c
+++ b/sound/pci/hda/patch_realtek.c
@@ -8801,6 +8801,16 @@  static const struct snd_hda_pin_quirk alc269_pin_fixup_tbl[] = {
 		{0x19, 0x03a11020},
 		{0x21, 0x0321101f}),
 	SND_HDA_PIN_QUIRK(0x10ec0285, 0x17aa, "Lenovo", ALC285_FIXUP_LENOVO_PC_BEEP_IN_NOISE,
+		{0x12, 0x90a60130},
+		{0x14, 0x90170110},
+		{0x19, 0x04a11040},
+		{0x21, 0x04211020}),
+	SND_HDA_PIN_QUIRK(0x10ec0285, 0x17aa, "Lenovo", ALC285_FIXUP_LENOVO_PC_BEEP_IN_NOISE,
+		{0x14, 0x90170110},
+		{0x19, 0x04a11040},
+		{0x1d, 0x40600001},
+		{0x21, 0x04211020}),
+	SND_HDA_PIN_QUIRK(0x10ec0285, 0x17aa, "Lenovo", ALC285_FIXUP_THINKPAD_NO_BASS_SPK_HEADSET_JACK,
 		{0x14, 0x90170110},
 		{0x19, 0x04a11040},
 		{0x21, 0x04211020}),
@@ -8971,10 +8981,6 @@  static const struct snd_hda_pin_quirk alc269_fallback_pin_fixup_tbl[] = {
 	SND_HDA_PIN_QUIRK(0x10ec0274, 0x1028, "Dell", ALC274_FIXUP_DELL_AIO_LINEOUT_VERB,
 		{0x19, 0x40000000},
 		{0x1a, 0x40000000}),
-	SND_HDA_PIN_QUIRK(0x10ec0285, 0x17aa, "Lenovo", ALC285_FIXUP_THINKPAD_NO_BASS_SPK_HEADSET_JACK,
-		{0x14, 0x90170110},
-		{0x19, 0x04a11040},
-		{0x21, 0x04211020}),
 	{}
 };