linux-ptl: add SOF backports for Zenbook S14 UX5406AA audio#90
Conversation
Adds two upstream SOF patches needed to bring up audio on ASUS Zenbook
S14 UX5406AA (Panther Lake, SSID 10431464):
- 0030 (PR #5728): avoid partial SoundWire machine matches on ACE 2.0+
- 0031 (PR #5754): add UX5406AA-specific machine table entry declaring
the BIOS-only ghost rt722 as a zero-endpoint device
Without these the SOF driver picks the wrong machine table entry and
fails to bring up the cs42l43 + 4xcs35l56 amp aggregation.
Refs:
thesofproject/linux#5728
thesofproject/linux#5754
thesofproject/linux#5721 (test report)
basecamp/omarchy#5557
|
I see there are open questions on the 5754 PR. Should we still proceed with this? Working on getting Omarchy 3.8 ready. Would be nice to have this in there. |
|
@dhh the SOF team still figuring out a few details for the final solution. audio is working on my system right now without any trouble. There are bugs here and there, but I can live with it until they find a final solution. I am using the OS with the patch as my daily driver, so there is no other problems happening because of it. If you think it is best to wait for their final solution its fine, but the system works here for me as is. |
|
I think it's more important to get the Zenbook S14 working with audio. We can always build a new kernel when there's a better fix. What are the bugs you're seeing? |
|
bug: I had my audio through the headphone connected to a beringher XR18 board. I watching a church service through the church sound system (I wanted to test in case we use my machine for streaming) I had to pan everything to the left so that I had all my audio through only one channel (the berhinger aux entry is balanced so they dont work properly with stereo sound) For some reason, after listening for a while, the pan that was 100% to the left came back to the center again. TLDR; I had my audio set up all the way to the left, and it came back to the center without any human intervention. |
|
I have similar issues with Lenovo Slim 7i ultra x9 388, soundacard not being able to be detected Zenbook has CS35L56 amps as SoundWire |
|
Cross-linking a related Lenovo Panther Lake SOF/SoundWire case: #97 #97 uses the same general exact-mask + ghost RT722/ALC722 idea from this PR, but for Lenovo Yoga Slim 7 Ultra 14IPH11 ( Leaving the link here so other Panther Lake audio users/maintainers reading #90 can find the Lenovo follow-up. |
|
Would be great to have a single patch/setup that works for both. But even better if we can get this into upstream, so we don't have to maintain a fork for long! |
|
Maybe @TsaiGaggery can help guide us here. What's already coming upstream, what can safely be backported. Would be great to have all Panther Lake laptops just work out of the box! |
@charleskeepax FYI |
|
Would you guys be able to try this fix: https://github.com/thesofproject/linux/pull/5773/commits I think it might be a slightly better approach. |
|
This approach seems much better @charleskeepax I am testing it, update when ready. @dhh this approach will simplify fixing other laptops with the same issue, we will only have to add the board to the dmi-quirks file. |
|
@Pegorim Apologies seems I missed a terminator in the first version of the patch there is an updated one now. Also I did my best to check the DMI stuff from the info on the tickets, but there is slightly that might need slightly tweaked if the match doesn't take. |
|
No problem sir. I am running a few checks before the test. |
Summary
Adds two SOF SoundWire patches to
linux-ptlto fix audio on the ASUS Zenbook S14 UX5406AA (Panther Lake / Core Ultra 9 386H, SSID 10431464). Following up on @dhh's comment in basecamp/omarchy#5557 — happy for you to take this as-is, rework, or use as a reference.thesofproject/linux#5728(still open upstream): tightens SoundWire mask matching so ACE 2.0+ platforms can't fall back to a partial machine table entry.thesofproject/linux#5754(still open upstream): adds the UX5406AA-specific entry. The board's BIOS declares anrt722SDCA device on link 0 that doesn't physically exist; the new entry declares it as a zero-endpoint ghost so the SDCA enumeration matches reality (cs42l43 on link 3 + 4× cs35l56 on links 1/2).Both apply cleanly against the current
linux-7.0.3.arch1base — only line-offset shifts, no rejected hunks.Test results (UX5406AA / BIOS UX5406AA.303)
I built locally against
v7.1-rc2with the same two patches and audio came up:sof-soundwirecard registered, all 4 cs35l56 amps loaded their tuning blobs fromlinux-firmware-cirrus 20260410-1, headphone jack and internal mic functional, HDMI works. Full report at thesofproject/linux#5721 (comment 4379439293).Caveat — upstream churn
PR #5754 is still under review. @bardliao mentioned in the upstream thread that the next revision (commit
e411f65) retargets a different topology file (…-agg-l3-cs35l56-l12.tplg) which isn't yet infirmware-sof 2025.12.2-1. If the merged version of #5754 differs materially from the diff included here, this PR will need a refresh. The version included now is the one I've personally booted and verified end-to-end.Refs
Test plan
makepkg -sagainst this branch builds successfully onx86_64linux-ptlpackage boots on Zenbook S14 UX5406AAaplay -llistssof-soundwirecard; speakers/jack/mic produce audio