Hi,
I have just got, from my company, a Lenovo X1 Gen 4.
I have installed Fedora 36 Server + Sway but the microphone is not recognized.
Speaker works as expected.
Looking at dmesg
seems that the microphone is recognized:
$ dmesg | grep -E "audio|hda|snd"
[ 2.241874] pci 0000:01:00.0: optimus capabilities: enabled, status dynamic power, hda bios codec supported
[ 22.110401] snd_hda_intel 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040100
[ 22.110690] snd_hda_intel 0000:00:1f.3: Digital mics found on Skylake+ platform, using SOF driver
[ 23.260246] snd_hda_intel 0000:01:00.1: enabling device (0000 -> 0002)
[ 23.260498] snd_hda_intel 0000:01:00.1: Disabling MSI
[ 23.260517] snd_hda_intel 0000:01:00.1: Handle vga_switcheroo audio client
[ 23.325372] snd_hda_intel 0000:01:00.1: bound 0000:01:00.0 (ops nv50_audio_component_bind_ops [nouveau])
[ 23.338985] sof-audio-pci-intel-tgl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040100
[ 23.338998] sof-audio-pci-intel-tgl 0000:00:1f.3: Digital mics found on Skylake+ platform, using SOF driver
[ 23.339144] sof-audio-pci-intel-tgl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if 0x040100
[ 23.339208] sof-audio-pci-intel-tgl 0000:00:1f.3: bound 0000:00:02.0 (ops i915_audio_component_bind_ops [i915])
[ 23.345990] sof-audio-pci-intel-tgl 0000:00:1f.3: use msi interrupt mode
[ 23.368707] sof-audio-pci-intel-tgl 0000:00:1f.3: hda codecs found, mask 5
[ 23.368709] sof-audio-pci-intel-tgl 0000:00:1f.3: using HDA machine driver skl_hda_dsp_generic now
[ 23.368711] sof-audio-pci-intel-tgl 0000:00:1f.3: DMICs detected in NHLT tables: 2
[ 23.381120] sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware info: version 2:2:0-57864
[ 23.381123] sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware: ABI 3:22:1 Kernel ABI 3:23:0
[ 23.381128] sof-audio-pci-intel-tgl 0000:00:1f.3: unknown sof_ext_man header type 3 size 0x30
[ 23.480585] sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware info: version 2:2:0-57864
[ 23.480592] sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware: ABI 3:22:1 Kernel ABI 3:23:0
[ 23.503355] sof-audio-pci-intel-tgl 0000:00:1f.3: Topology: ABI 3:22:1 Kernel ABI 3:23:0
[ 23.503484] skl_hda_dsp_generic skl_hda_dsp_generic: ASoC: Parent card not yet available, widget card binding deferred
[ 23.525027] snd_hda_codec_realtek ehdaudio0D0: autoconfig for ALC287: line_outs=1 (0x17/0x0/0x0/0x0/0x0) type:speaker
[ 23.525029] snd_hda_codec_realtek ehdaudio0D0: speaker_outs=0 (0x0/0x0/0x0/0x0/0x0)
[ 23.525030] snd_hda_codec_realtek ehdaudio0D0: hp_outs=1 (0x21/0x0/0x0/0x0/0x0)
[ 23.525031] snd_hda_codec_realtek ehdaudio0D0: mono: mono_out=0x0
[ 23.525031] snd_hda_codec_realtek ehdaudio0D0: inputs:
[ 23.525032] snd_hda_codec_realtek ehdaudio0D0: Mic=0x19
[ 23.564972] snd_hda_codec_realtek ehdaudio0D0: ASoC: sink widget AIF1TX overwritten
[ 23.564975] snd_hda_codec_realtek ehdaudio0D0: ASoC: source widget AIF1RX overwritten
[ 23.565070] skl_hda_dsp_generic skl_hda_dsp_generic: ASoC: sink widget hifi3 overwritten
[ 23.565072] skl_hda_dsp_generic skl_hda_dsp_generic: ASoC: sink widget hifi2 overwritten
[ 23.565075] skl_hda_dsp_generic skl_hda_dsp_generic: ASoC: sink widget hifi1 overwritten
[ 23.565077] skl_hda_dsp_generic skl_hda_dsp_generic: ASoC: source widget Codec Output Pin1 overwritten
[ 23.565079] skl_hda_dsp_generic skl_hda_dsp_generic: ASoC: sink widget Codec Input Pin1 overwritten
[ 23.565082] skl_hda_dsp_generic skl_hda_dsp_generic: ASoC: sink widget Analog Codec Playback overwritten
[ 23.565084] skl_hda_dsp_generic skl_hda_dsp_generic: ASoC: sink widget Digital Codec Playback overwritten
[ 23.565087] skl_hda_dsp_generic skl_hda_dsp_generic: ASoC: sink widget Alt Analog Codec Playback overwritten
[ 23.565090] skl_hda_dsp_generic skl_hda_dsp_generic: ASoC: source widget Analog Codec Capture overwritten
[ 23.565093] skl_hda_dsp_generic skl_hda_dsp_generic: ASoC: source widget Digital Codec Capture overwritten
[ 23.565096] skl_hda_dsp_generic skl_hda_dsp_generic: ASoC: source widget Alt Analog Codec Capture overwritten
[ 23.565101] skl_hda_dsp_generic skl_hda_dsp_generic: hda_dsp_hdmi_build_controls: no PCM in topology for HDMI converter 3
[ 23.584785] input: sof-hda-dsp Mic as /devices/pci0000:00/0000:00:1f.3/skl_hda_dsp_generic/sound/card1/input23
[ 23.584809] input: sof-hda-dsp Headphone as /devices/pci0000:00/0000:00:1f.3/skl_hda_dsp_generic/sound/card1/input24
[ 23.584829] input: sof-hda-dsp HDMI/DP,pcm=3 as /devices/pci0000:00/0000:00:1f.3/skl_hda_dsp_generic/sound/card1/input25
[ 23.584877] input: sof-hda-dsp HDMI/DP,pcm=4 as /devices/pci0000:00/0000:00:1f.3/skl_hda_dsp_generic/sound/card1/input26
[ 23.584894] input: sof-hda-dsp HDMI/DP,pcm=5 as /devices/pci0000:00/0000:00:1f.3/skl_hda_dsp_generic/sound/card1/input27
But it is not from wireplumber:
$ wpctl status
PipeWire 'pipewire-0' [0.3.59, user@local, cookie:520682250]
└─ Clients:
31. WirePlumber [0.3.59, user@local, pid:1638]
32. WirePlumber [export] [0.3.59, user@local, pid:1638]
53. xdg-desktop-portal-wlr [0.3.59, user@local, pid:3149]
54. xdg-desktop-portal [0.3.59, user@local, pid:3122]
56. wpctl [0.3.59, user@local, pid:5461]
57. pipewire-pulse [0.3.59, user@local, pid:3542]
Audio
├─ Devices:
│ 42. HDA NVidia [alsa]
│ 43. Tiger Lake-H HD Audio Controller [alsa]
│
├─ Sinks:
│ * 48. Tiger Lake-H HD Audio Controller Stereo [vol: 0.42 MUTED]
│
├─ Sink endpoints:
│
├─ Sources:
│
├─ Source endpoints:
│
└─ Streams:
Video
├─ Devices:
│ 38. Integrated RGB Camera [v4l2]
│ 39. Integrated RGB Camera [v4l2]
│ 40. Integrated RGB Camera [v4l2]
│ 41. Integrated RGB Camera [v4l2]
│
├─ Sinks:
│
├─ Sink endpoints:
│
├─ Sources:
│ * 44. Integrated RGB Camera (V4L2)
│ 46. Integrated RGB Camera (V4L2)
│
├─ Source endpoints:
│
└─ Streams:
Settings
└─ Default Configured Node Names:
Instead if I boot a live cd (cinnamon spin), it is detected as expected:
$ dmesg | grep -E "audio|hda|snd"
[ 11.292973] pci 0000:01:00.0: optimus capabilities: enabled, status dynamic power, hda bios codec supported
[ 11.432347] snd_hda_intel 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040100
[ 11.432359] snd_hda_intel 0000:00:1f.3: Digital mics found on Skylake+ platform, using SOF driver
[ 11.432405] snd_hda_intel 0000:01:00.1: enabling device (0000 -> 0002)
[ 11.432494] snd_hda_intel 0000:01:00.1: Disabling MSI
[ 11.432500] snd_hda_intel 0000:01:00.1: Handle vga_switcheroo audio client
[ 11.789361] sof-audio-pci-intel-tgl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040100
[ 11.789377] sof-audio-pci-intel-tgl 0000:00:1f.3: Digital mics found on Skylake+ platform, using SOF driver
[ 11.789561] sof-audio-pci-intel-tgl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if 0x040100
[ 11.789655] sof-audio-pci-intel-tgl 0000:00:1f.3: bound 0000:00:02.0 (ops i915_audio_component_bind_ops [i915])
[ 11.795959] sof-audio-pci-intel-tgl 0000:00:1f.3: use msi interrupt mode
[ 11.837974] sof-audio-pci-intel-tgl 0000:00:1f.3: hda codecs found, mask 5
[ 11.837977] sof-audio-pci-intel-tgl 0000:00:1f.3: using HDA machine driver skl_hda_dsp_generic now
[ 11.837979] sof-audio-pci-intel-tgl 0000:00:1f.3: DMICs detected in NHLT tables: 2
[ 11.881139] sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware info: version 2:2:0-57864
[ 11.881142] sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware: ABI 3:22:1 Kernel ABI 3:21:0
[ 11.881143] sof-audio-pci-intel-tgl 0000:00:1f.3: FW ABI is more recent than kernel
[ 11.881149] sof-audio-pci-intel-tgl 0000:00:1f.3: unknown sof_ext_man header type 3 size 0x30
[ 11.924968] snd_hda_intel 0000:01:00.1: bound 0000:01:00.0 (ops nv50_audio_component_bind_ops [nouveau])
[ 11.980468] sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware info: version 2:2:0-57864
[ 11.980472] sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware: ABI 3:22:1 Kernel ABI 3:21:0
[ 11.980474] sof-audio-pci-intel-tgl 0000:00:1f.3: FW ABI is more recent than kernel
[ 12.035760] sof-audio-pci-intel-tgl 0000:00:1f.3: Topology: ABI 3:22:1 Kernel ABI 3:21:0
[ 12.035763] sof-audio-pci-intel-tgl 0000:00:1f.3: warn: topology ABI is more recent than kernel
[ 12.035974] skl_hda_dsp_generic skl_hda_dsp_generic: ASoC: Parent card not yet available, widget card binding deferred
[ 12.059549] snd_hda_codec_realtek ehdaudio0D0: autoconfig for ALC287: line_outs=1 (0x17/0x0/0x0/0x0/0x0) type:speaker
[ 12.059552] snd_hda_codec_realtek ehdaudio0D0: speaker_outs=0 (0x0/0x0/0x0/0x0/0x0)
[ 12.059553] snd_hda_codec_realtek ehdaudio0D0: hp_outs=1 (0x21/0x0/0x0/0x0/0x0)
[ 12.059554] snd_hda_codec_realtek ehdaudio0D0: mono: mono_out=0x0
[ 12.059555] snd_hda_codec_realtek ehdaudio0D0: inputs:
[ 12.059556] snd_hda_codec_realtek ehdaudio0D0: Mic=0x19
[ 12.098117] snd_hda_codec_realtek ehdaudio0D0: ASoC: sink widget AIF1TX overwritten
[ 12.098120] snd_hda_codec_realtek ehdaudio0D0: ASoC: source widget AIF1RX overwritten
[ 12.098202] skl_hda_dsp_generic skl_hda_dsp_generic: ASoC: sink widget hifi3 overwritten
[ 12.098205] skl_hda_dsp_generic skl_hda_dsp_generic: ASoC: sink widget hifi2 overwritten
[ 12.098207] skl_hda_dsp_generic skl_hda_dsp_generic: ASoC: sink widget hifi1 overwritten
[ 12.098209] skl_hda_dsp_generic skl_hda_dsp_generic: ASoC: source widget Codec Output Pin1 overwritten
[ 12.098211] skl_hda_dsp_generic skl_hda_dsp_generic: ASoC: sink widget Codec Input Pin1 overwritten
[ 12.098214] skl_hda_dsp_generic skl_hda_dsp_generic: ASoC: sink widget Analog Codec Playback overwritten
[ 12.098217] skl_hda_dsp_generic skl_hda_dsp_generic: ASoC: sink widget Digital Codec Playback overwritten
[ 12.098219] skl_hda_dsp_generic skl_hda_dsp_generic: ASoC: sink widget Alt Analog Codec Playback overwritten
[ 12.098223] skl_hda_dsp_generic skl_hda_dsp_generic: ASoC: source widget Analog Codec Capture overwritten
[ 12.098225] skl_hda_dsp_generic skl_hda_dsp_generic: ASoC: source widget Digital Codec Capture overwritten
[ 12.098228] skl_hda_dsp_generic skl_hda_dsp_generic: ASoC: source widget Alt Analog Codec Capture overwritten
[ 12.098234] skl_hda_dsp_generic skl_hda_dsp_generic: hda_dsp_hdmi_build_controls: no PCM in topology for HDMI converter 3
[ 12.115319] input: sof-hda-dsp Mic as /devices/pci0000:00/0000:00:1f.3/skl_hda_dsp_generic/sound/card1/input24
[ 12.115450] input: sof-hda-dsp Headphone as /devices/pci0000:00/0000:00:1f.3/skl_hda_dsp_generic/sound/card1/input25
[ 12.115556] input: sof-hda-dsp HDMI/DP,pcm=3 as /devices/pci0000:00/0000:00:1f.3/skl_hda_dsp_generic/sound/card1/input26
[ 12.115626] input: sof-hda-dsp HDMI/DP,pcm=4 as /devices/pci0000:00/0000:00:1f.3/skl_hda_dsp_generic/sound/card1/input27
[ 12.115686] input: sof-hda-dsp HDMI/DP,pcm=5 as /devices/pci0000:00/0000:00:1f.3/skl_hda_dsp_generic/sound/card1/input28
$ wpctl status
PipeWire 'pipewire-0' [0.3.59, liveuser@localhost-live, cookie:2404330879]
└─ Clients:
31. WirePlumber [0.3.59, liveuser@localhost-live, pid:2362]
32. pipewire-pulse [0.3.59, liveuser@localhost-live, pid:2363]
34. WirePlumber [export] [0.3.59, liveuser@localhost-live, pid:2362]
40. Cinnamon Volume Control Media Keys [0.3.59, liveuser@localhost-live, pid:2291]
76. Cinnamon Volume Control [0.3.59, liveuser@localhost-live, pid:2453]
77. libcanberra [0.3.59, liveuser@localhost-live, pid:2299]
78. wpctl [0.3.59, liveuser@localhost-live, pid:3025]
Audio
├─ Devices:
│ 45. HDA NVidia [alsa]
│ 46. Tiger Lake-H HD Audio Controller [alsa]
│
├─ Sinks:
│ 55. Tiger Lake-H HD Audio Controller HDMI / DisplayPort 3 Output [vol: 1.00]
│ 56. Tiger Lake-H HD Audio Controller HDMI / DisplayPort 2 Output [vol: 1.00]
│ 57. Tiger Lake-H HD Audio Controller HDMI / DisplayPort 1 Output [vol: 1.00]
│ * 58. Tiger Lake-H HD Audio Controller Speaker + Headphones [vol: 0.40]
│
├─ Sink endpoints:
│
├─ Sources:
│ 59. Tiger Lake-H HD Audio Controller Headphones Stereo Microphone [vol: 1.00]
│ * 60. Tiger Lake-H HD Audio Controller Digital Microphone [vol: 1.00]
│
├─ Source endpoints:
│
└─ Streams:
Video
├─ Devices:
│ 41. Integrated RGB Camera [v4l2]
│ 42. Integrated RGB Camera [v4l2]
│ 43. Integrated RGB Camera [v4l2]
│ 44. Integrated RGB Camera [v4l2]
│
├─ Sinks:
│
├─ Sink endpoints:
│
├─ Sources:
│ * 47. Integrated RGB Camera (V4L2)
│ 49. Integrated RGB Camera (V4L2)
│
├─ Source endpoints:
│
└─ Streams:
Settings
└─ Default Configured Node Names:
From the kernel logs, I am assuming, I am not missing any firmwares.
Therefore I am not able to understand what I am missing in my installation.
Thanks