[SOLVED] Tumbleweed: sof-hda-dsp stuck on Pro Audio after zypper dup — no sound despite signal arriving

System:

  • openSUSE Tumbleweed 20260527, kernel 7.0.10-2-default
  • KDE Plasma 6.6.5, Wayland
  • Intel Tiger Lake-H (i7-11800H), sof-hda-dsp / Realtek ALC233
  • alsa-ucm-conf 1.2.15.3-1.2

Symptoms:

After a zypper dup, all internal audio (headphone jack, built-in speakers) stopped working. USB audio (SteelSeries Arctis 7+) continued to work normally.

Key observations that might help others identify the same issue:

  • pactl list cards showed Active Profile: pro-audio on the sof-hda-dsp card
  • pactl set-card-profile ... HiFi returned Failure: No such entity
  • KDE audio settings showed multiple “Tiger Lake-H HD Audio Controller Pro 1/3/4/5/31” entries instead of a single clean output
  • Volume bar in KDE audio settings moved when playing audio — signal was arriving at the sink — but no sound came out
  • amixer -c 2 revealed Headphone and Speaker both [off] at the ALSA hardware level, invisible to PipeWire

Root cause:

Two things happened together:

  1. An alsa-ucm-conf update reorganized the UCM configuration for the sof-hda-dsp card from /usr/share/alsa/ucm2/sof-hda-dsp/ to /usr/share/alsa/ucm2/Intel/sof-hda-dsp/ (now accessed via conf.d). The files are present and correct — rpm -ql alsa-ucm-conf | grep sof confirms them.
  2. WirePlumber had pro-audio saved in its persistent state at ~/.local/state/wireplumber/. On every restart, it restored Pro Audio from that saved state rather than re-evaluating available profiles — so even after the UCM files became accessible via the new path, WirePlumber never picked up HiFi.

In Pro Audio mode, WirePlumber does not manage the ALSA hardware mixer. The SOF firmware initializes with Headphone and Speaker muted by default, and nothing corrects them. Audio data flows into the sink (the volume bar moves) but nothing comes out of the hardware.

Fix:

bash

systemctl --user stop wireplumber
rm -rf ~/.local/state/wireplumber/
systemctl --user start wireplumber

This clears WirePlumber’s saved state. On restart it evaluates available profiles fresh, finds HiFi via the conf.d mapping, and activates it. Verify with:

bash

pactl list cards | grep -E "(Name:|Active Profile:)"

The sof-hda-dsp card should now show Active Profile: HiFi (HDMI1, HDMI2, HDMI3, Headphones, Mic1, Mic2). Sound works immediately and survives reboots.

Note: If you need sound before clearing WirePlumber state, you can temporarily unmute the ALSA mixer manually:

bash

amixer -c 2 sset Master unmute
amixer -c 2 sset Headphone 100% unmute
amixer -c 2 sset Speaker 100% unmute

This does not survive reboots — the proper fix is clearing the WirePlumber state as above.