mirror of
https://gitee.com/bianbu-linux/linux-6.6
synced 2025-04-24 14:07:52 -04:00
ALSA: hda/realtek: add patch for internal mic in Lenovo V145
commit ef27e89e7f3015be2b3c124833fbd6d2e4686561 upstream. Lenovo V145 is having phase inverted dmic but simply applying inverted dmic fixups does not work. Chaining up verb fixes for ALC283 enables inverting dmic fixup to work properly. Signed-off-by: Terry Cheong <htcheong@chromium.org> Cc: <stable@vger.kernel.org> Link: https://patch.msgid.link/20240830-lenovo-v145-fixes-v3-1-f7b7265068fa@chromium.org Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
638e61b002
commit
421c2701a9
1 changed files with 9 additions and 0 deletions
|
@ -7366,6 +7366,7 @@ enum {
|
||||||
ALC236_FIXUP_HP_GPIO_LED,
|
ALC236_FIXUP_HP_GPIO_LED,
|
||||||
ALC236_FIXUP_HP_MUTE_LED,
|
ALC236_FIXUP_HP_MUTE_LED,
|
||||||
ALC236_FIXUP_HP_MUTE_LED_MICMUTE_VREF,
|
ALC236_FIXUP_HP_MUTE_LED_MICMUTE_VREF,
|
||||||
|
ALC236_FIXUP_LENOVO_INV_DMIC,
|
||||||
ALC298_FIXUP_SAMSUNG_AMP,
|
ALC298_FIXUP_SAMSUNG_AMP,
|
||||||
ALC298_FIXUP_SAMSUNG_HEADPHONE_VERY_QUIET,
|
ALC298_FIXUP_SAMSUNG_HEADPHONE_VERY_QUIET,
|
||||||
ALC256_FIXUP_SAMSUNG_HEADPHONE_VERY_QUIET,
|
ALC256_FIXUP_SAMSUNG_HEADPHONE_VERY_QUIET,
|
||||||
|
@ -8922,6 +8923,12 @@ static const struct hda_fixup alc269_fixups[] = {
|
||||||
.type = HDA_FIXUP_FUNC,
|
.type = HDA_FIXUP_FUNC,
|
||||||
.v.func = alc236_fixup_hp_mute_led_micmute_vref,
|
.v.func = alc236_fixup_hp_mute_led_micmute_vref,
|
||||||
},
|
},
|
||||||
|
[ALC236_FIXUP_LENOVO_INV_DMIC] = {
|
||||||
|
.type = HDA_FIXUP_FUNC,
|
||||||
|
.v.func = alc_fixup_inv_dmic,
|
||||||
|
.chained = true,
|
||||||
|
.chain_id = ALC283_FIXUP_INT_MIC,
|
||||||
|
},
|
||||||
[ALC298_FIXUP_SAMSUNG_AMP] = {
|
[ALC298_FIXUP_SAMSUNG_AMP] = {
|
||||||
.type = HDA_FIXUP_FUNC,
|
.type = HDA_FIXUP_FUNC,
|
||||||
.v.func = alc298_fixup_samsung_amp,
|
.v.func = alc298_fixup_samsung_amp,
|
||||||
|
@ -10298,6 +10305,7 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = {
|
||||||
SND_PCI_QUIRK(0x17aa, 0x38f9, "Thinkbook 16P Gen5", ALC287_FIXUP_CS35L41_I2C_2),
|
SND_PCI_QUIRK(0x17aa, 0x38f9, "Thinkbook 16P Gen5", ALC287_FIXUP_CS35L41_I2C_2),
|
||||||
SND_PCI_QUIRK(0x17aa, 0x38fa, "Thinkbook 16P Gen5", ALC287_FIXUP_CS35L41_I2C_2),
|
SND_PCI_QUIRK(0x17aa, 0x38fa, "Thinkbook 16P Gen5", ALC287_FIXUP_CS35L41_I2C_2),
|
||||||
SND_PCI_QUIRK(0x17aa, 0x3902, "Lenovo E50-80", ALC269_FIXUP_DMIC_THINKPAD_ACPI),
|
SND_PCI_QUIRK(0x17aa, 0x3902, "Lenovo E50-80", ALC269_FIXUP_DMIC_THINKPAD_ACPI),
|
||||||
|
SND_PCI_QUIRK(0x17aa, 0x3913, "Lenovo 145", ALC236_FIXUP_LENOVO_INV_DMIC),
|
||||||
SND_PCI_QUIRK(0x17aa, 0x3977, "IdeaPad S210", ALC283_FIXUP_INT_MIC),
|
SND_PCI_QUIRK(0x17aa, 0x3977, "IdeaPad S210", ALC283_FIXUP_INT_MIC),
|
||||||
SND_PCI_QUIRK(0x17aa, 0x3978, "Lenovo B50-70", ALC269_FIXUP_DMIC_THINKPAD_ACPI),
|
SND_PCI_QUIRK(0x17aa, 0x3978, "Lenovo B50-70", ALC269_FIXUP_DMIC_THINKPAD_ACPI),
|
||||||
SND_PCI_QUIRK(0x17aa, 0x3bf8, "Quanta FL1", ALC269_FIXUP_PCM_44K),
|
SND_PCI_QUIRK(0x17aa, 0x3bf8, "Quanta FL1", ALC269_FIXUP_PCM_44K),
|
||||||
|
@ -10546,6 +10554,7 @@ static const struct hda_model_fixup alc269_fixup_models[] = {
|
||||||
{.id = ALC623_FIXUP_LENOVO_THINKSTATION_P340, .name = "alc623-lenovo-thinkstation-p340"},
|
{.id = ALC623_FIXUP_LENOVO_THINKSTATION_P340, .name = "alc623-lenovo-thinkstation-p340"},
|
||||||
{.id = ALC255_FIXUP_ACER_HEADPHONE_AND_MIC, .name = "alc255-acer-headphone-and-mic"},
|
{.id = ALC255_FIXUP_ACER_HEADPHONE_AND_MIC, .name = "alc255-acer-headphone-and-mic"},
|
||||||
{.id = ALC285_FIXUP_HP_GPIO_AMP_INIT, .name = "alc285-hp-amp-init"},
|
{.id = ALC285_FIXUP_HP_GPIO_AMP_INIT, .name = "alc285-hp-amp-init"},
|
||||||
|
{.id = ALC236_FIXUP_LENOVO_INV_DMIC, .name = "alc236-fixup-lenovo-inv-mic"},
|
||||||
{}
|
{}
|
||||||
};
|
};
|
||||||
#define ALC225_STANDARD_PINS \
|
#define ALC225_STANDARD_PINS \
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue