[PATCH] ALSA: hda/realtek: Add quirk for Lenovo Yoga9 14IAP7

Takashi Iwai tiwai at suse.de
Fri Jul 29 16:37:48 CEST 2022


On Fri, 29 Jul 2022 16:17:22 +0200,
Philipp Jungkamp wrote:
> 
> The Lenovo Yoga 9 14IAP7 is set up similarly to the Thinkpad X1 7th and
> 8th Gen. It also has the speakers attached to NID 0x14 and the bass
> speakers to NID 0x17, but here the codec misreports the NID 0x17 as
> unconnected.
> 
> The pincfg and hda verbs connect and activate the bass speaker
> amplifiers, but the generic driver will connect them to NID 0x06 which
> has no volume control. Set connection list/preferred connections is
> required to gain volume control.
> 
> BugLink: https://bugzilla.kernel.org/show_bug.cgi?id=208555
> Signed-off-by: Philipp Jungkamp <p.jungkamp at gmx.net>

The patch looks almost good, just some nitpick:

> +	[ALC287_FIXUP_YOGA9_14IAP7_BASS_SPK] = {
> +		.type = HDA_FIXUP_VERBS,
> +		.v.verbs = (const struct hda_verb[]) {
> +			// enable left speaker
> +			{ 0x20, 0x500, 0x24 },
> +			{ 0x20, 0x400, 0x41 },
(snip)

Those 0x500 and 0x4xx verbs are AC_VERB_SET_COEF_INDEX and
AC_VERB_SET_PROC_COEF.  Please replace with them.  The lower byte of
0x4xx is combined to the higher byte of the 3rd value, i.e.
	{ 0x20, 0x4b0, 0x20 }
becomes
	{ 0x20, AC_VERB_SET_PROC_COEF, 0xb020 }

See the existing example for ALC287_FIXUP_YOGA7_14ITL_SPEAKERS as a
reference.


thanks,

Takashi


More information about the Alsa-devel mailing list