[Bug 296398] ALC257 internal digital mi c (DMIC) not captured on ThinkPad T490 — 15 .1-RELEASE

[email protected]
Newsgroups gmane.os.freebsd.bugs
Message-ID <[email protected]/bugzilla/>
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=296398

            Bug ID: 296398
           Summary: ALC257 internal digital mic (DMIC) not captured on
                    ThinkPad T490 — 15.1-RELEASE
           Product: Base System
           Version: 15.1-RELEASE
          Hardware: amd64
                OS: Any
            Status: New
          Severity: Affects Many People
          Priority: ---
         Component: kern
          Assignee: [email protected]
          Reporter: [email protected]

Created attachment 272285
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=272285&action=edit
pindump test

FreeBSD 15.1-RELEASE (amd64), GENERIC kernel.

Hardware: Lenovo ThinkPad T490
HDA controller: Intel Cannon Point-LP — pci 0x8086:0x9da3, subvendor 0x17aa,
subdevice 0x2279
Codec: Realtek ALC257 (subsystem 0x17aa2279)

Problem: Playback works perfectly (internal speakers and headphone jack).
Capture from the internal microphone produces nothing. The internal mic is a
fixed digital (DMIC) pin that snd_hda routes in the codec map but never
actually captures from.

Pin configuration:
nid 18: 0x90a60120 — Mic, conn=Fixed, ctype=Digital, loc=Internal — the
internal mic. Codec labels it OSS "monitor". Routes: nid18 to nid36 (audio
selector, selected) to nid7 (ADC, association 1).
nid 25: 0x04a11030 — Mic, conn=Jack, loc=Right — combo-jack mic; records only
noise.

The routing tree shows the internal-mic chain as live and selected (nid18 to
nid36 to nid7), not disabled. Despite this, no audio reaches the ADC.

Confirmed by direct test: with "mixer -d pcm0 monitor=100" and default_unit=0,
capturing the internal mic via "dd if=/dev/dsp0 of=/tmp/test.raw bs=16k
count=30" and playing back with "cat /tmp/test.raw > /dev/dsp0" produces
complete silence. Same result through PulseAudio (parecord on oss_input.dsp0)
and through LibreWolf. Playback is fully functional, so this is capture-path
only.

sndstat:
pcm0: Realtek ALC257 (Analog 2.0+HP/2.0) (play/rec)
pcm1: Realtek ALC257 (Right Analog Mic) (rec)
pcm2: Intel Kaby Lake (HDMI/DP 8ch) (play)

This matches the known gap where snd_hda has no working capture path for
Intel/Realtek digital internal mics (DMIC) that rely on the SOF firmware path
available on Linux. The T490 is an extremely common 2019 corporate laptop, so
this affects a wide range of mainstream hardware.

Possibly the same root cause as bug 290496 (ALC257 capture issues).

-- 
You are receiving this mail because:
You are the assignee for the bug.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.