No sound with sof-firmware 2.2, pipewire, ALSA 1.2.7.1, sequence command 'devdisall' is ignored

Hello everybody,

I noticed I don’t have sound on my laptop. Even worse, I have no audio device to select in Gnome Settings > Audio, Evolution hangs when a mail arrives (the biggest issue), YouTube videos don’t start playing (i.e. Vivaldi hangs and taints the kernel, or something along those lines)

I’m running up-to-date Manjaro Gnome on Lenovo X1 Carbon, which has Intel Tiger Lake audio device:

> sudo lspci -s "00:1f.3" -v
00:1f.3 Audio device: Intel Corporation Tiger Lake-LP Smart Sound Technology Audio Controller (rev 20) (prog-if 80)
	Subsystem: Lenovo Device 22d5
	Flags: bus master, fast devsel, latency 64, IRQ 186, IOMMU group 13
	Memory at 603d1c8000 (64-bit, non-prefetchable) [size=16K]
	Memory at 603d000000 (64-bit, non-prefetchable) [size=1M]
	Capabilities: [50] Power Management version 3
	Capabilities: [80] Vendor Specific Information: Len=14 <?>
	Capabilities: [60] MSI: Enable+ Count=1/1 Maskable- 64bit+
	Kernel driver in use: sof-audio-pci-intel-tgl
	Kernel modules: snd_hda_intel, snd_sof_pci_intel_tgl

According to a quick dmesg, the firmware and kernel modules seem to load fine (abeit the firmware seems to be on newer ABI?):

> sudo dmesg | grep -E "(sof|hda_intel)"
[    0.672182] PCI-DMA: Using software bounce buffering for IO (SWIOTLB)
[    0.672183] software IO TLB: mapped [mem 0x0000000085715000-0x0000000089715000] (64MB)
[    5.603336] snd_hda_intel 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040380
[    5.604883] snd_hda_intel 0000:00:1f.3: Digital mics found on Skylake+ platform, using SOF driver
[    6.111825] sof-audio-pci-intel-tgl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040380
[    6.112374] sof-audio-pci-intel-tgl 0000:00:1f.3: Digital mics found on Skylake+ platform, using SOF driver
[    6.113054] sof-audio-pci-intel-tgl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if 0x040380
[    7.072035] sof-audio-pci-intel-tgl 0000:00:1f.3: bound 0000:00:02.0 (ops i915_audio_component_bind_ops [i915])
[    7.079270] sof-audio-pci-intel-tgl 0000:00:1f.3: use msi interrupt mode
[    7.121555] sof-audio-pci-intel-tgl 0000:00:1f.3: hda codecs found, mask 5
[    7.121558] sof-audio-pci-intel-tgl 0000:00:1f.3: using HDA machine driver skl_hda_dsp_generic now
[    7.121562] sof-audio-pci-intel-tgl 0000:00:1f.3: DMICs detected in NHLT tables: 4
[    7.122940] sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware info: version 2:2:0-57864
[    7.122942] sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware: ABI 3:22:1 Kernel ABI 3:19:1
[    7.122943] sof-audio-pci-intel-tgl 0000:00:1f.3: warn: FW ABI is more recent than kernel
[    7.122946] sof-audio-pci-intel-tgl 0000:00:1f.3: unknown sof_ext_man header type 3 size 0x30
[    7.233346] sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware info: version 2:2:0-57864
[    7.233352] sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware: ABI 3:22:1 Kernel ABI 3:19:1
[    7.233354] sof-audio-pci-intel-tgl 0000:00:1f.3: warn: FW ABI is more recent than kernel
[    7.264598] sof-audio-pci-intel-tgl 0000:00:1f.3: Topology: ABI 3:22:1 Kernel ABI 3:19:1
[    7.264603] sof-audio-pci-intel-tgl 0000:00:1f.3: warn: topology ABI is more recent than kernel
[    7.414863] input: sof-hda-dsp Mic as /devices/pci0000:00/0000:00:1f.3/skl_hda_dsp_generic/sound/card2/input41
[    7.414898] input: sof-hda-dsp Headphone as /devices/pci0000:00/0000:00:1f.3/skl_hda_dsp_generic/sound/card2/input42
[    7.414916] input: sof-hda-dsp HDMI/DP,pcm=3 as /devices/pci0000:00/0000:00:1f.3/skl_hda_dsp_generic/sound/card2/input43
[    7.414936] input: sof-hda-dsp HDMI/DP,pcm=4 as /devices/pci0000:00/0000:00:1f.3/skl_hda_dsp_generic/sound/card2/input44
[    7.414953] input: sof-hda-dsp HDMI/DP,pcm=5 as /devices/pci0000:00/0000:00:1f.3/skl_hda_dsp_generic/sound/card2/input45

Systemd service pipewire has something to tell:

> systemctl --user status pipewire
● pipewire.service - PipeWire Multimedia Service
     Loaded: loaded (/usr/lib/systemd/user/pipewire.service; disabled; vendor preset: enabled)
     Active: active (running) since Mon 2022-07-18 09:45:53 EEST; 28min ago
TriggeredBy: ● pipewire.socket
   Main PID: 2119 (pipewire)
      Tasks: 2 (limit: 38154)
     Memory: 16.1M
        CPU: 349ms
     CGroup: /user.slice/user-1000.slice/user@1000.service/session.slice/pipewire.service
             └─2119 /usr/bin/pipewire

heinä 18 09:45:53 carbon-x1 systemd[1991]: Started PipeWire Multimedia Service.
heinä 18 09:52:06 carbon-x1 pipewire[2119]: ALSA lib parser.c:1194:(parse_sequence) error: sequence command 'devdisall' is ignored

With that as the lead, I found that ALSA 1.2.7.2 fixed a typo from ‘devdisall’ to ‘disdevall’. Sure enough, I have 1.2.7.1 installed:

> pacman -Qs alsa-ucm-conf
local/alsa-ucm-conf 1.2.7.1-1
    ALSA Use Case Manager configuration (and topologies)

Any ideas how to tackle this? Can it really be the ignored sequence command that borks the whole pipewire?

First attempt: installing alsa-ucm-conf from Arch Linux repos made the devdisall message go away, but still no sound.

I don’t really know when this issue started, but it was quite recent, I’d say less than two weeks ago. I noticed the audio devices missing, but didn’t look into it until today.

Edit: Added link

Second attempt: downgrade sof-firmware from 2.2-1 to 2.1.1.a-1 restored sound to my system!

I still get the ABI version message, though:

> sudo dmesg | grep -E "(sof|hda_intel)" --color=never
[    0.682855] PCI-DMA: Using software bounce buffering for IO (SWIOTLB)
[    0.682856] software IO TLB: mapped [mem 0x0000000085715000-0x0000000089715000] (64MB)
[    5.760278] snd_hda_intel 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040380
[    5.760375] snd_hda_intel 0000:00:1f.3: Digital mics found on Skylake+ platform, using SOF driver
[    6.282541] sof-audio-pci-intel-tgl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040380
[    6.282999] sof-audio-pci-intel-tgl 0000:00:1f.3: Digital mics found on Skylake+ platform, using SOF driver
[    6.283718] sof-audio-pci-intel-tgl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if 0x040380
[    6.603181] sof-audio-pci-intel-tgl 0000:00:1f.3: bound 0000:00:02.0 (ops i915_audio_component_bind_ops [i915])
[    6.610962] sof-audio-pci-intel-tgl 0000:00:1f.3: use msi interrupt mode
[    6.696178] sof-audio-pci-intel-tgl 0000:00:1f.3: hda codecs found, mask 5
[    6.696184] sof-audio-pci-intel-tgl 0000:00:1f.3: using HDA machine driver skl_hda_dsp_generic now
[    6.696192] sof-audio-pci-intel-tgl 0000:00:1f.3: DMICs detected in NHLT tables: 4
[    6.697321] sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware info: version 2:1:1-3964a
[    6.697323] sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware: ABI 3:21:0 Kernel ABI 3:19:1
[    6.697325] sof-audio-pci-intel-tgl 0000:00:1f.3: warn: FW ABI is more recent than kernel
[    6.697328] sof-audio-pci-intel-tgl 0000:00:1f.3: unknown sof_ext_man header type 3 size 0x30
[    6.792498] sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware info: version 2:1:1-3964a
[    6.792503] sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware: ABI 3:21:0 Kernel ABI 3:19:1
[    6.792505] sof-audio-pci-intel-tgl 0000:00:1f.3: warn: FW ABI is more recent than kernel
[    6.829466] sof-audio-pci-intel-tgl 0000:00:1f.3: Topology: ABI 3:21:0 Kernel ABI 3:19:1
[    6.829469] sof-audio-pci-intel-tgl 0000:00:1f.3: warn: topology ABI is more recent than kernel
[    6.966469] input: sof-hda-dsp Mic as /devices/pci0000:00/0000:00:1f.3/skl_hda_dsp_generic/sound/card2/input41
[    6.966527] input: sof-hda-dsp Headphone as /devices/pci0000:00/0000:00:1f.3/skl_hda_dsp_generic/sound/card2/input42
[    6.966561] input: sof-hda-dsp HDMI/DP,pcm=3 as /devices/pci0000:00/0000:00:1f.3/skl_hda_dsp_generic/sound/card2/input43
[    6.966588] input: sof-hda-dsp HDMI/DP,pcm=4 as /devices/pci0000:00/0000:00:1f.3/skl_hda_dsp_generic/sound/card2/input44
[    6.966610] input: sof-hda-dsp HDMI/DP,pcm=5 as /devices/pci0000:00/0000:00:1f.3/skl_hda_dsp_generic/sound/card2/input45

So, I guess it wasn’t the command sequence after all.

Edit: There was a day-old bug report about this already.

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.