From: Takashi Iwai <tiwai@suse.de>
To: Viktor Menshin <ripeeerr@gmail.com>
Cc: linux-sound@vger.kernel.org, alsa-devel@alsa-project.org
Subject: Re: [PATCH] ALSA: hda/realtek: Fix hiss/crackle on Lenovo Xiaoxin 14 GT (17aa:3912)
Date: Fri, 16 Oct 2026 16:12:36 +0200 [thread overview]
Message-ID: <87bj8t3faj.wl-tiwai@suse.de> (raw)
In-Reply-To: <20261015132157.57198-1-ripeeerr@gmail.com>
On Thu, 15 Oct 2026 15:21:57 +0200,
Viktor Menshin wrote:
>
> Commit 3a3e810e9108 ("ALSA: hda/realtek: Add quirk for Lenovo Xiaoxin
> 14 GT") added a quirk mapping SSID 17aa:3912 to
> ALC287_FIXUP_YOGA9_14IAP7_BASS_SPK_PIN, chosen by analogy with
> neighboring SSIDs (0x390d, 0x3911, 0x391a) without being verified on
> hardware, as noted in that commit's own message.
>
> I have since tested it on the actual hardware (Lenovo Xiaoxin Pro 14
> ASP10, same 17aa:3912 SSID) and confirmed it does not fix the reported
> issue. ALC287_FIXUP_YOGA9_14IAP7_BASS_SPK_PIN only repoints pin 0x17
> and the preferred DAC pairs for the bass speaker; it does not touch
> the codec's vendor processing coefficients. The actual symptom -
> constant electrical hiss/crackle on both the headphone jack and the
> internal speakers, independent of volume - is unrelated to pin/DAC
> routing and is also present on stock Windows before the Realtek
> driver is installed, which points at those coefficients being left
> at their power-on default.
>
> To find the correct values, I passed the physical HD Audio controller
> through to a Windows 10 VM (VFIO, with QEMU patched to log CORB verb
> traffic) and captured the coefficient writes the vendor Realtek driver
> performs at init. Replaying a single one of them on Linux via hda-verb
> reproducibly eliminates the headphone jack noise:
>
> hda-verb /dev/snd/hwC#D0 0x20 SET_COEF_INDEX 0x36
> hda-verb /dev/snd/hwC#D0 0x20 SET_PROC_COEF 0x77d7
>
> This has held up across reboots and kernel updates for several weeks
> (applied via a small systemd oneshot unit while testing).
>
> Add a dedicated fixup that performs this coefficient write and chains
> it with the existing ALC287_FIXUP_YOGA9_14IAP7_BASS_SPK_PIN (which may
> still be relevant for the bass speaker pin wiring on this board), and
> point the 17aa:3912 quirk entry at it instead.
>
> Honesty note: this fixes the headphone jack. The internal speakers
> still have noise under certain conditions (notably worse on AC power)
> that I have not been able to isolate via coefficient-table replay;
> that part remains open. Sending what is verified to work rather than
> holding this back.
>
> Link: https://bugzilla.kernel.org/show_bug.cgi?id=221203
> Fixes: 3a3e810e9108 ("ALSA: hda/realtek: Add quirk for Lenovo Xiaoxin 14 GT")
> Signed-off-by: Viktor Menshin <ripeeerr@gmail.com>
Applied to for-next branch now. Thanks.
Takashi
next prev parent reply other threads:[~2026-10-16 14:13 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-10-15 13:21 [PATCH] ALSA: hda/realtek: Fix hiss/crackle on Lenovo Xiaoxin 14 GT (17aa:3912) Viktor Menshin
2026-10-16 14:12 ` Takashi Iwai [this message]
-- strict thread matches above, loose matches on Subject: below --
2026-10-15 13:13 Viktor Menshin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87bj8t3faj.wl-tiwai@suse.de \
--to=tiwai@suse.de \
--cc=alsa-devel@alsa-project.org \
--cc=linux-sound@vger.kernel.org \
--cc=ripeeerr@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.