Follow-up from the original reporter with workaround details, confirmed
working as of 2026-07-30 on kernel 7.0.0-28.
The ABI mismatch (firmware-sof-signed 2025.12.2-1 provides topology ABI
3:29:1, kernel expects 3:23:1) is still present and not fixed in
7.0.0-28.
Working workaround: patch two bytes in the topology binary at offset
0x96 to change the minor ABI version from 29 to 23. This makes the
kernel accept the topology file without crashing the DSP.
The patch command (run as root):
python3 -c "
with open('/lib/firmware/intel/sof-ipc4-tplg/sof-hda-generic-2ch.tplg',
'r+b') as f:
f.seek(0x96)
f.write(b'\x17\x00')
"
update-initramfs -u -k all
To survive firmware-sof-signed package updates, a dpkg post-invoke hook can
re-apply the patch automatically. We use a script at
/usr/local/sbin/sof-abi-patch.sh that checks the current minor version
before patching (skips if already 23 or below) and a hook in
/etc/apt/apt.conf.d/99-sof-abi-patch containing: DPkg::Post-Invoke {
"/usr/local/sbin/sof-abi-patch.sh"; };
After patching, the boot log shows "Topology: ABI 3:23:1 Kernel ABI
3:23:1" with no mismatch and the DSP loads cleanly. Audio works on
speakers and headphones.
The proper fix would be either updating the kernel to accept topology
ABI 3:29:1 gracefully as older kernels did, or shipping a firmware-sof-
signed package with a 3:23:1 topology for the affected hardware.
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2158818
Title:
SOF IPC4 topology ABI mismatch causes DSP crash (EHOSTDOWN) —
regression in 7.0.0-22
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/2158818/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs