Bug#1108069: [regression] Builtin recognized microphone Asus X507UA does not record
Hi Igor,
On Wed, Jun 25, 2025 at 07:54:42PM -0500, Igor Támara wrote:
> Hi Salvatore,
>
>
> El mié, 25 jun 2025 a las 13:47, Salvatore Bonaccorso
> (<carnil@debian.org>) escribió:
> >
> > Hi Igor,
> >
> > [For context, there was a regression report in Debian at
> > https://bugs.debian.org/1108069]
> >
> > On Thu, Jun 19, 2025 at 09:36:13PM -0500, Igor Tamara wrote:
> > > Package: src:linux
> > > Version: 6.12.32-1
> > > Severity: normal
> > > Tags: a11y
> > >
> > > Dear Maintainer,
> > >
> > > The builtin microphone on my Asus X507UA does not record, is
> > > recognized and some time ago it worked on Bookworm with image-6.1.0-31,
> > > newer images are able to record when appending snd_hda_intel.model=1043:1271
> > > to the boot as a workaround.
> > >
> > > The images that work with the boot option appended are, but not without
> > > it are:
> > >
> > > linux-image-6.15-amd64
> > > linux-image-6.12.32-amd64
> > > linux-image-6.1.0-37-amd64
> > > linux-image-6.1.0-0.a.test-amd64-unsigned_6.1.129-1a~test_amd64.deb
> > > referenced by https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1100928
> > > Also compiled from upstream 6.12.22 and 6.1.133 with the same result
> > >
> > > The image linux-image-6.1.0-31-amd64 worked properly, the problem was
> > > introduced in 129 and the result of the bisect was
> > >
> > > d26408df0e25f2bd2808d235232ab776e4dd08b9 is the first bad commit
> > > commit d26408df0e25f2bd2808d235232ab776e4dd08b9
> > > Author: Kuan-Wei Chiu <visitorckw@gmail.com>
> > > Date: Wed Jan 29 00:54:15 2025 +0800
> > >
> > > ALSA: hda: Fix headset detection failure due to unstable sort
> > >
> > > commit 3b4309546b48fc167aa615a2d881a09c0a97971f upstream.
> > >
> > > The auto_parser assumed sort() was stable, but the kernel's sort() uses
> > > heapsort, which has never been stable. After commit 0e02ca29a563
> > > ("lib/sort: optimize heapsort with double-pop variation"), the order of
> > > equal elements changed, causing the headset to fail to work.
> > >
> > > Fix the issue by recording the original order of elements before
> > > sorting and using it as a tiebreaker for equal elements in the
> > > comparison function.
> > >
> > > Fixes: b9030a005d58 ("ALSA: hda - Use standard sort function in hda_auto_parser.c")
> > > Reported-by: Austrum <austrum.lab@gmail.com>
> > > Closes: https://bugzilla.kernel.org/show_bug.cgi?id=219158
> > > Tested-by: Austrum <austrum.lab@gmail.com>
> > > Cc: stable@vger.kernel.org
> > > Signed-off-by: Kuan-Wei Chiu <visitorckw@gmail.com>
> > > Link: https://patch.msgid.link/20250128165415.643223-1-visitorckw@gmail.com
> > > Signed-off-by: Takashi Iwai <tiwai@suse.de>
> > > Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> > >
> > > sound/pci/hda/hda_auto_parser.c | 8 +++++++-
> > > sound/pci/hda/hda_auto_parser.h | 1 +
> > > 2 files changed, 8 insertions(+), 1 deletion(-)
> > >
> > > I'm attaching the output of alsa-info_alsa-info.sh script
> > >
> > > Please let me know if I can provide more information.
> >
> > Might you be able to try please the attached patch to see if it fixes
> > the issue?
> >
>
> I recompiled and the mic is recording without issues when running on
> 6.1.133 and 6.12.32
Thanks for the confirmation! Takashi, can you apply the proposed
change (slightly improved in attached variant to add Reported-by and
Closes tags), hopefully getting it into required stable series?
Regards,
Salvatore
>From 7c4babc48b76582656da31e51cda8c1efdd38be3 Mon Sep 17 00:00:00 2001
From: Salvatore Bonaccorso <carnil@debian.org>
Date: Wed, 25 Jun 2025 20:41:28 +0200
Subject: [PATCH] ALSA: hda/realtek: Fix built-in mic on ASUS VivoBook X507UAR
The built-in mic of ASUS VivoBook X507UAR is broken recently by the fix
of the pin sort. The fixup ALC256_FIXUP_ASUS_MIC_NO_PRESENCE is working
for addressing the regression, too.
Fixes: 3b4309546b48 ("ALSA: hda: Fix headset detection failure due to unstable sort")
Reported-by: Igor Tamara <igor.tamara@gmail.com>
Closes: https://bugs.debian.org/1108069
Signed-off-by: Salvatore Bonaccorso <carnil@debian.org>
---
sound/pci/hda/patch_realtek.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
index 2e1618494c20..3613ed0aa683 100644
--- a/sound/pci/hda/patch_realtek.c
+++ b/sound/pci/hda/patch_realtek.c
@@ -11026,6 +11026,7 @@ static const struct hda_quirk alc269_fixup_tbl[] = {
SND_PCI_QUIRK(0x1043, 0x1df3, "ASUS UM5606WA", ALC294_FIXUP_BASS_SPEAKER_15),
SND_PCI_QUIRK(0x1043, 0x1264, "ASUS UM5606KA", ALC294_FIXUP_BASS_SPEAKER_15),
SND_PCI_QUIRK(0x1043, 0x1e02, "ASUS UX3402ZA", ALC245_FIXUP_CS35L41_SPI_2),
+ SND_PCI_QUIRK(0x1043, 0x1e10, "ASUS VivoBook X507UAR", ALC256_FIXUP_ASUS_MIC_NO_PRESENCE),
SND_PCI_QUIRK(0x1043, 0x1e11, "ASUS Zephyrus G15", ALC289_FIXUP_ASUS_GA502),
SND_PCI_QUIRK(0x1043, 0x1e12, "ASUS UM3402", ALC287_FIXUP_CS35L41_I2C_2),
SND_PCI_QUIRK(0x1043, 0x1e1f, "ASUS Vivobook 15 X1504VAP", ALC2XX_FIXUP_HEADSET_MIC),
--
2.50.0
Reply to: