Re: [PATCH v2] ALSA: hda/realtek: add patch for internal mic in Lenovo V145

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]



On Wed, 28 Aug 2024 22:20:18 +0200,
Terry Cheong wrote:
> 
> 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@xxxxxxxxxxxx>
> ---
> Changes in v2:
> - Corrected description for the patch
> - Link to v1: https://lore.kernel.org/r/20240829-lenovo-v145-fixes-v1-1-133d1e6813b3@xxxxxxxxxxxx
> ---
>  sound/pci/hda/patch_realtek.c | 9 +++++++++
>  1 file changed, 9 insertions(+)
> 
> diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
> index 588738ce7380..bbda235ea96c 100644
> --- a/sound/pci/hda/patch_realtek.c
> +++ b/sound/pci/hda/patch_realtek.c
> @@ -7538,6 +7538,7 @@ enum {
>  	ALC236_FIXUP_HP_GPIO_LED,
>  	ALC236_FIXUP_HP_MUTE_LED,
>  	ALC236_FIXUP_HP_MUTE_LED_MICMUTE_VREF,
> +	ALC236_FIXUP_LENOVO_INV_DMIC,
>  	ALC298_FIXUP_SAMSUNG_AMP,
>  	ALC298_FIXUP_SAMSUNG_AMP2,
>  	ALC298_FIXUP_SAMSUNG_HEADPHONE_VERY_QUIET,
> @@ -9161,6 +9162,12 @@ static const struct hda_fixup alc269_fixups[] = {
>  		.type = HDA_FIXUP_FUNC,
>  		.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] = {
>  		.type = HDA_FIXUP_FUNC,
>  		.v.func = alc298_fixup_samsung_amp,
> @@ -10707,6 +10714,7 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = {
>  	SND_PCI_QUIRK(0x17aa, 0x3855, "Legion 7 16ITHG6", ALC287_FIXUP_LEGION_16ITHG6),
>  	SND_PCI_QUIRK(0x17aa, 0x3865, "Lenovo 13X", ALC287_FIXUP_CS35L41_I2C_2),
>  	SND_PCI_QUIRK(0x17aa, 0x3866, "Lenovo 13X", ALC287_FIXUP_CS35L41_I2C_2),
> +	SND_PCI_QUIRK(0x17aa, 0x3913, "Lenovo 145", ALC236_FIXUP_LENOVO_INV_DMIC),
>  	SND_PCI_QUIRK(0x17aa, 0x3869, "Lenovo Yoga7 14IAL7", ALC287_FIXUP_YOGA9_14IAP7_BASS_SPK_PIN),
>  	SND_PCI_QUIRK(0x17aa, 0x386e, "Legion Y9000X 2022 IAH7 / Yoga Pro 7 14ARP8",  ALC287_FIXUP_LENOVO_14ARP8_LEGION_IAH7),
>  	SND_PCI_QUIRK(0x17aa, 0x386f, "Legion Pro 7/7i", ALC287_FIXUP_LENOVO_LEGION_7),

The quirk table is sorted in PCI SSID order.
Could you try to put the entry at the right position?


thanks,

Takashi




[Index of Archives]     [Pulseaudio]     [Linux Audio Users]     [ALSA Devel]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]

  Powered by Linux