ALSA: hda/realtek: Apply headset jack quirk for non-bass alc287 thinkpads
authorJosé Relvas <josemonsantorelvas@gmail.com>
Wed, 31 Jan 2024 11:34:09 +0000 (11:34 +0000)
committerTakashi Iwai <tiwai@suse.de>
Wed, 31 Jan 2024 13:10:27 +0000 (14:10 +0100)
There currently exists two thinkpad headset jack fixups:
ALC285_FIXUP_THINKPAD_NO_BASS_SPK_HEADSET_JACK
ALC285_FIXUP_THINKPAD_HEADSET_JACK

The latter is applied to alc285 and alc287 thinkpads which contain
bass speakers.
However, the former was only being applied to alc285 thinkpads,
leaving non-bass alc287 thinkpads with no headset button controls.
This patch fixes that by adding ALC285_FIXUP_THINKPAD_NO_BASS_SPK_HEADSET_JACK
to the alc287 chains, allowing the detection of headset buttons.

Signed-off-by: José Relvas <josemonsantorelvas@gmail.com>
Cc: <stable@vger.kernel.org>
Link: https://lore.kernel.org/r/20240131113407.34698-3-josemonsantorelvas@gmail.com
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/hda/patch_realtek.c

index bfa244028b9943fb2eb125e3fe5ea4a51a3bbf33..f98520c0bed9fe15758b13f72a4d3e4714095355 100644 (file)
@@ -9579,7 +9579,7 @@ static const struct hda_fixup alc269_fixups[] = {
                .type = HDA_FIXUP_FUNC,
                .v.func = cs35l41_fixup_i2c_two,
                .chained = true,
-               .chain_id = ALC269_FIXUP_THINKPAD_ACPI,
+               .chain_id = ALC285_FIXUP_THINKPAD_NO_BASS_SPK_HEADSET_JACK,
        },
        [ALC287_FIXUP_TAS2781_I2C] = {
                .type = HDA_FIXUP_FUNC,
@@ -9606,6 +9606,8 @@ static const struct hda_fixup alc269_fixups[] = {
        [ALC287_FIXUP_THINKPAD_I2S_SPK] = {
                .type = HDA_FIXUP_FUNC,
                .v.func = alc287_fixup_bind_dacs,
+               .chained = true,
+               .chain_id = ALC285_FIXUP_THINKPAD_NO_BASS_SPK_HEADSET_JACK,
        },
        [ALC287_FIXUP_MG_RTKC_CSAMP_CS35L41_I2C_THINKPAD] = {
                .type = HDA_FIXUP_FUNC,