Hi Sasha, This patch needs additional patches to work: dcaca1b5f0d4 ALSA: hda/tas2781: annotate calibration data endianness c3ca4458cc2f ALSA: hda/tas2781: add TAS2563 support for 14ARB7 c021ca729fe8 ALSA: hda/tas2781: add configurable global i2c address 76f5f55c45b9 ALSA: hda/tas2781: add ptrs to calibration functions 68f7f3ff6c2a ALSA: hda/tas2781: configure the amp after firmware load Please add these if possible, or drop this patch from 6.6 and 6.7. Thanks, Gergo On Mon, 2024-01-22 at 09:51 -0500, Sasha Levin wrote: > From: Gergo Koteles <soyer@xxxxxx> > > [ Upstream commit b5cb53fd32779f3a971c45bcd997ae2608aa1086 ] > > The 14ARB7 has two tas2563 amplifier on i2c. > Connect it to the tas2781 driver. > > Signed-off-by: Gergo Koteles <soyer@xxxxxx> > Link: https://lore.kernel.org/r/abce9ee55689523562feb72383377171a489ddc7.1703891777.git.soyer@xxxxxx > Signed-off-by: Takashi Iwai <tiwai@xxxxxxx> > Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx> > --- > sound/pci/hda/patch_realtek.c | 14 ++++++++++++++ > 1 file changed, 14 insertions(+) > > diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c > index 70b17b08d4ff..9606f2448fda 100644 > --- a/sound/pci/hda/patch_realtek.c > +++ b/sound/pci/hda/patch_realtek.c > @@ -6984,6 +6984,12 @@ static void tas2781_fixup_i2c(struct hda_codec *cdc, > tas2781_generic_fixup(cdc, action, "i2c", "TIAS2781"); > } > > +static void yoga7_14arb7_fixup_i2c(struct hda_codec *cdc, > + const struct hda_fixup *fix, int action) > +{ > + tas2781_generic_fixup(cdc, action, "i2c", "INT8866"); > +} > + > /* for alc295_fixup_hp_top_speakers */ > #include "hp_x360_helper.c" > > @@ -7454,6 +7460,7 @@ enum { > ALC236_FIXUP_DELL_DUAL_CODECS, > ALC287_FIXUP_CS35L41_I2C_2_THINKPAD_ACPI, > ALC287_FIXUP_TAS2781_I2C, > + ALC287_FIXUP_YOGA7_14ARB7_I2C, > ALC245_FIXUP_HP_MUTE_LED_COEFBIT, > ALC245_FIXUP_HP_X360_MUTE_LEDS, > ALC287_FIXUP_THINKPAD_I2S_SPK, > @@ -9568,6 +9575,12 @@ static const struct hda_fixup alc269_fixups[] = { > .chained = true, > .chain_id = ALC269_FIXUP_THINKPAD_ACPI, > }, > + [ALC287_FIXUP_YOGA7_14ARB7_I2C] = { > + .type = HDA_FIXUP_FUNC, > + .v.func = yoga7_14arb7_fixup_i2c, > + .chained = true, > + .chain_id = ALC285_FIXUP_THINKPAD_HEADSET_JACK, > + }, > [ALC245_FIXUP_HP_MUTE_LED_COEFBIT] = { > .type = HDA_FIXUP_FUNC, > .v.func = alc245_fixup_hp_mute_led_coefbit, > @@ -10221,6 +10234,7 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = { > SND_PCI_QUIRK(0x17aa, 0x3853, "Lenovo Yoga 7 15ITL5", ALC287_FIXUP_YOGA7_14ITL_SPEAKERS), > SND_PCI_QUIRK(0x17aa, 0x3855, "Legion 7 16ITHG6", ALC287_FIXUP_LEGION_16ITHG6), > SND_PCI_QUIRK(0x17aa, 0x3869, "Lenovo Yoga7 14IAL7", ALC287_FIXUP_YOGA9_14IAP7_BASS_SPK_PIN), > + SND_PCI_QUIRK(0x17aa, 0x3870, "Lenovo Yoga 7 14ARB7", ALC287_FIXUP_YOGA7_14ARB7_I2C), > SND_PCI_QUIRK(0x17aa, 0x387d, "Yoga S780-16 pro Quad AAC", ALC287_FIXUP_TAS2781_I2C), > SND_PCI_QUIRK(0x17aa, 0x387e, "Yoga S780-16 pro Quad YC", ALC287_FIXUP_TAS2781_I2C), > SND_PCI_QUIRK(0x17aa, 0x3881, "YB9 dual power mode2 YC", ALC287_FIXUP_TAS2781_I2C),