sof-audio-pci-intel-tgl error messages piling on DMESG
System information:
Operating System: openSUSE Tumbleweed 20241025 KDE Plasma Version: 6.2.2 KDE Frameworks Version: 6.7.0 Qt Version: 6.8.0 Kernel Version: 6.11.5-1-default (64-bit) Graphics Platform: Wayland Processors: 24 × 12th Gen Intel® Core™ i7-12850HX Memory: 31.1 GiB of RAM Graphics Processor: NVIDIA RTX A2000 8GB Laptop GPU/PCIe/SSE2 Manufacturer: LENOVO Product Name: 21D6S16900 System Version: ThinkPad P16 Gen 1
The following messages keep being written to DMESG:
sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
This message repeats 20 times before changing to
sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
Which repeats 20 times and changes to
sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp3 Pin: -22
Which also repeats for 20 times before going back to iDisp1 and continuing the cycle
The driver logs the following information before entering the error message cycle:
sof-audio-pci-intel-tgl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if 0x040380
sof-audio-pci-intel-tgl 0000:00:1f.3: use msi interrupt mode
sof-audio-pci-intel-tgl 0000:00:1f.3: using HDA machine driver skl_hda_dsp_generic now
sof-audio-pci-intel-tgl 0000:00:1f.3: DMICs detected in NHLT tables: 2
sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware paths/files for ipc type 0:
sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware file: intel/sof/sof-adl-s.ri
sof-audio-pci-intel-tgl 0000:00:1f.3: Topology file: intel/sof-tplg/sof-hda-generic-2ch.tplg
sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware info: version 2:2:0-57864
sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware: ABI 3:22:1 Kernel ABI 3:23:1
sof-audio-pci-intel-tgl 0000:00:1f.3: unknown sof_ext_man header type 3 size 0x30
cdc_ncm 4-1.1:2.0: setting tx_max = 16384
sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware info: version 2:2:0-57864
sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware: ABI 3:22:1 Kernel ABI 3:23:1
sof-audio-pci-intel-tgl 0000:00:1f.3: Topology: ABI 3:22:1 Kernel ABI 3:23:1
Sound works fine but the sheer amount of error messages logged caught my eye.
Additional information:
# hwinfo –sound
20: PCI 1f.3: 0403 Audio device
[Created at pci.386]
Unique ID: nS1_.ZKSQd808JI1
SysFS ID: /devices/pci0000:00/0000:00:1f.3
SysFS BusID: 0000:00:1f.3
Hardware Class: sound
Model: "Intel Audio device"
Vendor: pci 0x8086 "Intel Corporation"
Device: pci 0x7ad0
SubVendor: pci 0x17aa "Lenovo"
SubDevice: pci 0x22fc
Revision: 0x11
Driver: "sof-audio-pci-intel-tgl"
Driver Modules: "snd_sof_pci_intel_tgl"
Memory Range: 0x4251638000-0x425163bfff (rw,non-prefetchable)
Memory Range: 0x4251500000-0x42515fffff (rw,non-prefetchable)
IRQ: 206 (1156 events)
Module Alias: "pci:v00008086d00007AD0sv000017AAsd000022FCbc04sc03i80"
Driver Info #0:
Driver Status: snd_hda_intel is active
Driver Activation Cmd: "modprobe snd_hda_intel"
Driver Info #1:
Driver Status: snd_soc_avs is active
Driver Activation Cmd: "modprobe snd_soc_avs"
Driver Info #2:
Driver Status: snd_sof_pci_intel_tgl is active
Driver Activation Cmd: "modprobe snd_sof_pci_intel_tgl"
Config Status: cfg=new, avail=yes, need=no, active=unknown
28: PCI 100.1: 0403 Audio device
[Created at pci.386]
Unique ID: NXNs.Z+BlTBGqFL4
Parent ID: vSkL.WM1Tf0yQKB5
SysFS ID: /devices/pci0000:00/0000:00:01.0/0000:01:00.1
SysFS BusID: 0000:01:00.1
Hardware Class: sound
Model: "nVidia Audio device"
Vendor: pci 0x10de "nVidia Corporation"
Device: pci 0x2291
SubVendor: pci 0x17aa "Lenovo"
SubDevice: pci 0x22db
Revision: 0xa1
Driver: "snd_hda_intel"
Driver Modules: "snd_hda_intel"
Memory Range: 0xaa000000-0xaa003fff (rw,non-prefetchable)
IRQ: 17 (617 events)
Module Alias: "pci:v000010DEd00002291sv000017AAsd000022DBbc04sc03i00"
Driver Info #0:
Driver Status: snd_hda_intel is active
Driver Activation Cmd: "modprobe snd_hda_intel"
Config Status: cfg=new, avail=yes, need=no, active=unknown
Attached to: #10 (PCI bridge)
39: USB 00.1: 0401 Multimedia audio controller
[Created at usb.122]
Unique ID: zjpQ.NUtrPFK8oC9
Parent ID: k4bc.2DFUsyrieMD
SysFS ID: /devices/pci0000:00/0000:00:14.0/usb1/1-12/1-12:1.1
SysFS BusID: 1-12:1.1
Hardware Class: sound
Model: "Samsung Electronics Samsung USB C Earphones"
Hotplug: USB
[dmesg.txt](https://github.com/user-attachments/files/17543068/dmesg.txt)
Vendor: usb 0x04e8 "Samsung Electronics Co., Ltd"
Device: usb 0xa05e "Samsung USB C Earphones"
Revision: "1.00"
Serial ID: "20160406.1"
Driver: "snd-usb-audio"
Driver Modules: "snd_usb_audio"
Speed: 12 Mbps
Module Alias: "usb:v04E8pA05Ed0100dc00dsc00dp00ic01isc02ip00in01"
Config Status: cfg=new, avail=yes, need=no, active=unknown
Attached to: #49 (Hub)
@rfsalomon, the prints like
sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
are printed because PA/PW is probing all PCMs of the sound cards and since you have NVIDIA dGPU, the HDMI via Intel display is not working, they are physically disconnected.
Can you attach the output of alsa-info.sh, a full kernel log (dmesg)?
@rfsalomon, the prints like
sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22are printed because PA/PW is probing all PCMs of the sound cards and since you have NVIDIA dGPU, the HDMI via Intel display is not working, they are physically disconnected.
Understood. However, these lines should not appear on the console when the user logs in without a shell, should they?
You have misspelled option to select the legacy driver snd-intel-dspcf.dsp_driver=1 -> snd-intel-dspcfg.dsp_driver=1 With that option you will certainly not get the same prints, but you will loose the digital microphones in the laptop.
Right, I see now in the dmesg/alsa-info log:
[ 14.212949] [ T45] sof-audio-pci-intel-tgl 0000:00:1f.3: hda codecs found, mask 1
the display codec is not connected and in this case SOF needs to treat the HDMI audio PCM devices as dummy ones, they are created, but they will no work and they will eventually throw an error, which is unfortunate. I cannot recall what solution we have for this, @kv2019i, do you have recollection?
The problem is that the topology files we have assumes that there is always HDMI audio. I'm sure this machine is not the first with such setup and so far they have worked somehow.
I do agree t hat the prints are not nice in the console.
@ujfalusi This seems like a user-space problem. alsa-info shows that no HDMI/DP PCMs are created for integrated graphics and dummy codecs are plugged in instead. So for kernel this is as expected. alsa-info also shows no controls for HDMI/DP for the SOF device, so user-space elements should NOT try to open the SOF devices.
For some reaosn some user-space entity keeps on opening the dummy HDMI/DP entities (even if kcontrols say there's nothing connected) and the resulting error is to be expected (you can't actually stream to the dummy codec).
That's a good question which component and why in user-space is making this call. I'm guessing this is using Pipewire. Pipewire logs would be the next place to check -- i.e. what's in the log when kernel sees open on the dummy HDMI/DP PCMs.
Yes, it is wireplumber which probes the PCMs to figure out their capabilities. UCM correctly figures out that the HDMI PCM devices are unusable without the need to open the PCMs.
fwiw, I can reproduce it on my gaming laptop with options snd_sof_intel_hda codec_mask=1 and logging in.
I cannot find a way to tell wireplumber to not probe the HDMI PCMs.
I think it is the pro-audio profile probing which is opening all PCM devices, it is unconditionally goes through all cards and all PCM device via add_pro_profile() https://gitlab.freedesktop.org/pipewire/pipewire/-/blob/master/spa/plugins/alsa/acp/acp.c?ref_type=heads#L297
I don't see a way to disable this. It is forced with https://gitlab.freedesktop.org/pipewire/pipewire/-/commit/f62c40c205f84d70d41fef3f3d361b0e4651a50e commit.
indeed, dropping the call to add_pro_profile() will get rid of the prints in the expense of no pro-audio profile.
https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3407
@rfsalomon, I think it would be best to create a bug for Pipewire and add a link to this issue to work out a solution.
Will do. I'll post the bug link here for reference. Thanks!
[edit] https://gitlab.freedesktop.org/freedesktop/freedesktop/-/issues/1835
The issue upstream moved to https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/4405
After one of the package updates (not sure which) the error messages are gone.
based on the last comment I have closed the issue, thanks @rfsalomon for the report.
based on the last comment I have closed the issue
I get similar errors (without any additional condition) so not sure if I should make a new issue but maybe you could consider reopening
[ 131.643983] sof-audio-pci-intel-tgl 0000:00:1f.3: ipc tx error for 0x60010000 (msg/reply size: 108/20): -5
[ 131.643989] sof-audio-pci-intel-tgl 0000:00:1f.3: HW params ipc failed for stream 1
[ 131.643990] sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_pcm_component_hw_params on 0000:00:1f.3: -5
[ 131.643996] HDMI 1: ASoC: error at __soc_pcm_hw_params on HDMI 1: -5
[ 131.644004] HDMI 1: ASoC: error at dpcm_fe_dai_hw_params on HDMI 1: -5
On Fedora 42 kernel 6.14.5
hwinfo
33: PCI 1f.3: 0401 Multimedia audio controller
[Created at pci.386]
Unique ID: nS1_.A1pAHZm_qG4
SysFS ID: /devices/pci0000:00/0000:00:1f.3
SysFS BusID: 0000:00:1f.3
Hardware Class: sound
Model: "Intel Tiger Lake-LP Smart Sound Technology Audio Controller"
Vendor: pci 0x8086 "Intel Corporation"
Device: pci 0xa0c8 "Tiger Lake-LP Smart Sound Technology Audio Controller"
SubVendor: pci 0x10ec "Realtek Semiconductor Co., Ltd."
SubDevice: pci 0x119e
Revision: 0x20
Driver: "sof-audio-pci-intel-tgl"
Driver Modules: "snd_sof_pci_intel_tgl"
Memory Range: 0x607e1a0000-0x607e1a3fff (rw,non-prefetchable)
Memory Range: 0x607e000000-0x607e0fffff (rw,non-prefetchable)
IRQ: 191 (1746 events)
Module Alias: "pci:v00008086d0000A0C8sv000010ECsd0000119Ebc04sc01i00"
Driver Info #0:
Driver Status: snd_hda_intel is active
Driver Activation Cmd: "modprobe snd_hda_intel"
Driver Info #1:
Driver Status: snd_soc_avs is active
Driver Activation Cmd: "modprobe snd_soc_avs"
Driver Info #2:
Driver Status: snd_sof_pci_intel_tgl is active
Driver Activation Cmd: "modprobe snd_sof_pci_intel_tgl"
Config Status: cfg=new, avail=yes, need=no, active=unknown
It works with snd_intel_dspcfg.dsp_driver=1 so I came here first, before pipewire
but it also reported errors like pw.node: (alsa_output.pci-0000_00_1f.3-platform-sof-essx8336.HiFi__HDMI1__sink-76) suspended -> error ((null)) which might be about power saving misconfiguration, so I'm not sure :/
@Beryesa, can you file a new issue with the 'ipc tx error'? It is not the same issue as the HDMI audio is available errors.
Please copy sof-dyndbg.conf.txt as /etc/modprobe.d/sof-dyndbg.conf reboot and attach the full kernel log and also the output of alsa-info.sh (as attachments).