Summary
The internal microphone does not produce any audio input on Linux. The laptop
uses an AMD Ryzen 7 7735H (Rembrandt/Rembrandt-R) SoC with a Conexant SN6140
HD-Audio codec and an AMD ACP6x audio coprocessor. On the same hardware, the
internal microphone works correctly under Windows (OEM driver), which
suggests this is a Linux driver/quirk gap rather than a hardware fault.
System information
- Laptop model: Xiaomi RedmiBook 16 2025 (AMD)
dmidecode -s system-product-name: REDMI Book 16 2025(AMD)
dmidecode -s baseboard-product-name: TM2423
dmidecode -s baseboard-manufacturer: XIAOMI
- CPU/APU: AMD Ryzen 7 7735H
- Kernel tested:
7.0.14-zen1 (mainline-based, linux-zen), also reproduced on linux-cachyos (both the "stable" 6.6.x line and the latest 7.1.5-1-cachyos)
- Distro: Arch Linux
- Audio stack: PipeWire
Hardware / PCI topology
03:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Radeon High Definition Audio Controller
03:00.5 Multimedia controller: Advanced Micro Devices, Inc. [AMD] Audio Coprocessor (rev 60)
03:00.6 Audio device: Advanced Micro Devices, Inc. [AMD] Ryzen HD Audio Controller
Two HDA cards are enumerated (card 0 = HDMI/DP via 03:00.1, card 1 =
Conexant SN6140 analog codec via 03:00.6). The ACP coprocessor
(03:00.5, snd_pci_acp6x) is powered on but never registers a sound
card. No error is logged for it — the trail simply goes cold after the
PCI enable message.
Codec details (card 1, Conexant SN6140)
Codec: Conexant SN6140
Vendor Id: 0x14f11f87
Subsystem Id: 0x1d722423
Relevant pin complex nodes (/proc/asound/card1/codec#0):
Node 0x19 [Pin Complex] -- external 3.5mm mic jack, works as expected
Pin Default 0x03a11030: [Jack] Mic at Ext Left
Pincap: IN Detect, Vref caps: HIZ 50 80
Node 0x1a [Pin Complex] -- candidate "internal mic" pin
Pincap 0x00000024: IN Detect (no Vref caps at all)
Pin Default 0x40f001f0: [N/A] Other at Ext N/A
DefAssociation = 0xf, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x00
DefAssociation = 0xf on node 0x1a indicates the BIOS pin config
intentionally leaves this pin unclassified/unused. It also lacks Vref
capability, which is atypical for an analog electret mic input. This is
consistent with the physical mic array not being wired to the SN6140
codec at all, and instead being wired through the AMD ACP PDM/DMIC path
(the usual arrangement for Rembrandt/Phoenix-class AMD laptops).
What we tried on node 0x1a
Using hdajackretask, pin 0x1a was overridden to Internal Mic / Fixed /
Internal, and the boot override was installed successfully
(/etc/modprobe.d/hda-jack-retask.conf + firmware patch). After reboot,
dmesg correctly reports:
snd_hda_codec_conexant hdaudioC1D0: autoconfig for SN6140:
inputs:
Mic=0x19
Internal Mic=0x1a
ADC node 0x13 connection list confirms 0x1a is selected:
Node 0x13 [Audio Input]
Connection: 4
0x18 0x19 0x1a* 0x15
The amp is unmuted (Amp-In vals: [0x03 0x03]), Capture Switch: on,on,
volume at max. Despite this, arecord/parecord from this pin produces
only a single loud transient click on stream open, followed by silence —
consistent with an electrically unconnected/floating pin rather than a
software mute or gain issue.
ACP DMIC path (suspected correct path)
$ lsmod | grep -E "snd_sof_amd_acp|snd_pci_acp6x|snd_acp_legacy"
snd_sof_amd_acp70
snd_sof_amd_acp63
snd_sof_amd_acp (+ snd_sof_amd_rembrandt, snd_sof_amd_vangogh, snd_sof_amd_acp63, snd_sof_amd_renoir)
snd_sof_pci
snd_soc_acpi_amd_match
snd_acp_legacy_common
snd_pci_acp6x
$ dmesg | grep -i acp
[ 7.339317] snd_pci_acp6x 0000:03:00.5: enabling device (0000 -> 0002)
No further ACP-related log lines follow (no machine driver probe, no DMI
match attempt/failure, no SOF firmware load, no error). /proc/asound/cards
never shows a third (ACP/DMIC) card.
Blacklisting snd_pci_acp6x (to let the SOF/Rembrandt stack own the
device exclusively) and rebuilding initramfs did not change this behavior.
This strongly suggests the ACP machine driver (snd_soc_acp6x_mach /
equivalent SOF machine driver) never finds a DMI match for this board and
therefore never attempts to probe, rather than failing after an attempt.
Reproduction steps
arecord -l
sudo dmesg | grep -A20 "autoconfig for SN6140"
cat /proc/asound/card1/codec#0
sudo dmesg | grep -i acp
cat /proc/asound/cards
Expected behavior
Internal microphone should be exposed as a working capture device and
record audio, as it does under the Windows OEM driver on identical
hardware.
Actual behavior
No working capture device is exposed for the internal microphone array.
The SN6140 pin 0x1a (candidate internal-mic pin) is electrically silent
even after correct pin-config override. The AMD ACP coprocessor never
registers a sound card at all.
Suspected root cause
Missing DMI quirk / machine-driver entry for this specific OEM board
(XIAOMI / TM2423 — Xiaomi RedmiBook 16 2025, AMD) in the AMD ACP6x
machine driver (sound/soc/amd/yc/acp6x-mach.c or the corresponding
ACP6.3/7.0 machine driver used for Rembrandt-R), similar to the DMI
quirks that already exist for Lenovo/ASUS/HP platforms on the same
silicon family.
Additional notes
- This appears to affect other very recent (2025) laptops with the same
SN6140 codec — a similar unresolved report exists for a Lenovo IdeaPad
Slim 5 16AKP10 (Arch Linux Forums, thread id 309624, Oct-Dec 2025),
where the internal mic pin is likewise enumerated but silent.
- Happy to provide additional debug output (
SOF topology/firmware logs,
hda-verb probing, ACPI DSDT dump for the HDAS/ACP power-resource
block) on request — I don't have kernel driver development experience
but I'm willing to test patches.
Attachments
Full diagnostic archive collected and attached: mic_debug_report.tar.gz, containing:
- Full
dmesg and journalctl -k -b
- Full
dmidecode
- Codec dump (
/proc/asound/card*/codec#*)
lspci -vvv (audio devices)
- Loaded sound modules (
lsmod)
- Full DSDT disassembly (
dsdt_only.dsl, extracted via /sys/firmware/acpi/tables/DSDT) — confirms an ACPI Device (ACP) node exists alongside Device (AZAL) (the HDA controller hosting the SN6140 codec)
arecord -l / aplay -l / /proc/asound/cards output
mic_debug_report.tar.gz
Summary
The internal microphone does not produce any audio input on Linux. The laptop
uses an AMD Ryzen 7 7735H (Rembrandt/Rembrandt-R) SoC with a Conexant SN6140
HD-Audio codec and an AMD ACP6x audio coprocessor. On the same hardware, the
internal microphone works correctly under Windows (OEM driver), which
suggests this is a Linux driver/quirk gap rather than a hardware fault.
System information
dmidecode -s system-product-name:REDMI Book 16 2025(AMD)dmidecode -s baseboard-product-name:TM2423dmidecode -s baseboard-manufacturer:XIAOMI7.0.14-zen1(mainline-based, linux-zen), also reproduced onlinux-cachyos(both the "stable" 6.6.x line and the latest 7.1.5-1-cachyos)Hardware / PCI topology
Two HDA cards are enumerated (
card 0= HDMI/DP via 03:00.1,card 1=Conexant SN6140 analog codec via 03:00.6). The ACP coprocessor
(
03:00.5,snd_pci_acp6x) is powered on but never registers a soundcard. No error is logged for it — the trail simply goes cold after the
PCI enable message.
Codec details (card 1, Conexant SN6140)
Relevant pin complex nodes (
/proc/asound/card1/codec#0):DefAssociation = 0xfon node 0x1a indicates the BIOS pin configintentionally leaves this pin unclassified/unused. It also lacks Vref
capability, which is atypical for an analog electret mic input. This is
consistent with the physical mic array not being wired to the SN6140
codec at all, and instead being wired through the AMD ACP PDM/DMIC path
(the usual arrangement for Rembrandt/Phoenix-class AMD laptops).
What we tried on node 0x1a
Using
hdajackretask, pin 0x1a was overridden to Internal Mic / Fixed /Internal, and the boot override was installed successfully
(
/etc/modprobe.d/hda-jack-retask.conf+ firmware patch). After reboot,dmesgcorrectly reports:ADC node 0x13 connection list confirms 0x1a is selected:
The amp is unmuted (
Amp-In vals: [0x03 0x03]),Capture Switch: on,on,volume at max. Despite this,
arecord/parecordfrom this pin producesonly a single loud transient click on stream open, followed by silence —
consistent with an electrically unconnected/floating pin rather than a
software mute or gain issue.
ACP DMIC path (suspected correct path)
No further ACP-related log lines follow (no machine driver probe, no DMI
match attempt/failure, no SOF firmware load, no error).
/proc/asound/cardsnever shows a third (ACP/DMIC) card.
Blacklisting
snd_pci_acp6x(to let the SOF/Rembrandt stack own thedevice exclusively) and rebuilding initramfs did not change this behavior.
This strongly suggests the ACP machine driver (
snd_soc_acp6x_mach/equivalent SOF machine driver) never finds a DMI match for this board and
therefore never attempts to probe, rather than failing after an attempt.
Reproduction steps
Expected behavior
Internal microphone should be exposed as a working capture device and
record audio, as it does under the Windows OEM driver on identical
hardware.
Actual behavior
No working capture device is exposed for the internal microphone array.
The SN6140 pin 0x1a (candidate internal-mic pin) is electrically silent
even after correct pin-config override. The AMD ACP coprocessor never
registers a sound card at all.
Suspected root cause
Missing DMI quirk / machine-driver entry for this specific OEM board
(
XIAOMI/TM2423— Xiaomi RedmiBook 16 2025, AMD) in the AMD ACP6xmachine driver (
sound/soc/amd/yc/acp6x-mach.cor the correspondingACP6.3/7.0 machine driver used for Rembrandt-R), similar to the DMI
quirks that already exist for Lenovo/ASUS/HP platforms on the same
silicon family.
Additional notes
SN6140 codec — a similar unresolved report exists for a Lenovo IdeaPad
Slim 5 16AKP10 (Arch Linux Forums, thread id 309624, Oct-Dec 2025),
where the internal mic pin is likewise enumerated but silent.
SOFtopology/firmware logs,hda-verbprobing, ACPI DSDT dump for theHDAS/ACP power-resourceblock) on request — I don't have kernel driver development experience
but I'm willing to test patches.
Attachments
Full diagnostic archive collected and attached:
mic_debug_report.tar.gz, containing:dmesgandjournalctl -k -bdmidecode/proc/asound/card*/codec#*)lspci -vvv(audio devices)lsmod)dsdt_only.dsl, extracted via/sys/firmware/acpi/tables/DSDT) — confirms an ACPIDevice (ACP)node exists alongsideDevice (AZAL)(the HDA controller hosting the SN6140 codec)arecord -l/aplay -l//proc/asound/cardsoutputmic_debug_report.tar.gz