05-12-2025 12:29 PM - edited 05-12-2025 12:38 PM
I’m running Ubuntu 25.04 with kernel 6.14.0-10-generic on an ASUS Zenbook 14 UX3405MA. The system detects the Cirrus Logic CS35L41 amplifiers, and firmware appears to load correctly. However, there is no sound from the internal speakers. Headphones and HDMI audio outputs function as expected.
Dmesg Output:
[ 3.546375] cs35l41-hda spi0-CSC3551:00-cs35l41-hda.0: Firmware Loaded - Type: spk-prot, Gain: 19
[ 3.546479] cs35l41-hda spi0-CSC3551:00-cs35l41-hda.0: CS35L41 Bound - SSID: 10431A63, BST: 1, VSPK: 1, CH: L, FW EN: 1, SPKID: 0
[ 3.634189] cs35l41-hda spi0-CSC3551:00-cs35l41-hda.1: Firmware Loaded - Type: spk-prot, Gain: 19
[ 3.634317] cs35l41-hda spi0-CSC3551:00-cs35l41-hda.1: CS35L41 Bound - SSID: 10431A63, BST: 1, VSPK: 0, CH: R, FW EN: 1, SPKID: 0
[ 5.661791] cs35l41-hda spi0-CSC3551:00-cs35l41-hda.0: Failed waiting for CS35L41_PUP_DONE_MASK: -110
[ 5.763693] cs35l41-hda spi0-CSC3551:00-cs35l41-hda.1: Failed waiting for CS35L41_PUP_DONE_MASK: -110
The error Failed waiting for CS35L41_PUP_DONE_MASK: -110 suggests a timeout during the power-up sequence of the amplifier. This issue seems to be related to missing or incorrect ACPI _DSD properties in the BIOS, which are necessary for proper initialization of the CS35L41 amplifiers.
System Details:
BIOS Version: 309 (latest available)
Secure Boot: Disabled
Audio Firmware: cs35l41-dsp1-spk-prot-10431a63-spkid0-{l0,r0}.wmfw, Gain: 19
Steps Taken:
Verified that the latest firmware is present in /lib/firmware/cirrus/cs35l41/.
Confirmed that the system is using the snd_hda_scodec_cs35l41 driver.
Attempted to apply a 19 dB gain configuration, but the issue persists.
Request to ASUS:
Could ASUS release a BIOS update (version ≥ 309) or an EC patch for the UX3405MA that supplies the correct _DSD entries (spk-id-gpios, amp-gpios, etc.) required by the Linux driver?
Alternatively, please publish the exact CS35L41 tuning (.bincfg) used in Windows so Linux users can load it without reverse-engineering.
Any official guidance to make CS35L41 work on Linux would be greatly appreciated. Right now, the laptop speakers are unusable.
Thank you for your assistance.
05-12-2025 05:29 PM
@whitemankpi
Unfortunately, since we have not tested the Linux system, we cannot guarantee its stability and compatibility. We apologize for any inconvenience caused.
05-13-2025 08:30 AM
Thank you for your response.
I understand that Linux is not officially supported or tested by ASUS. However, I would like to emphasize that this issue is not strictly about Linux per se — it’s about the CS35L41 amplifier hardware not completing initialization due to missing or incomplete ACPI _DSD entries, which affects driver behavior regardless of OS.
Why this matters:
The CS35L41 firmware does load under Linux and the devices bind correctly, but the amplifiers fail during the power-up phase (CS35L41_PUP_DONE_MASK timeout).
This issue can potentially be resolved by small changes in BIOS ACPI tables (e.g. exposing spk-id-gpios, reset-gpios, amp-gpios, etc.) or publishing the expected Windows-side .bincfg tuning file.
Many other ASUS laptop models (e.g. G14, Flow, Zenbook S13) faced similar issues, which were later resolved via BIOS updates. Users like myself are willing to test and provide feedback if such a fix can be tried.
I’m not asking for full Linux support — only for minimal technical transparency or cooperation to let the community implement a working solution.
If forwarding this internally to the BIOS or EC firmware team is possible, I (and likely many other users) would be truly grateful.
Thank you again.
05-14-2025 03:30 AM
Further to my earlier reply, thank you again for engaging. I fully appreciate that Linux isn’t officially supported by ASUS, but this isn’t merely a distro-specific glitch—it’s a hardware initialization gap affecting multiple ASUS models. In every case below the CS35L41 amplifier firmware loads, but the amp never powers up correctly without proper ACPI _DSD entries or OEM tuning files, resulting in silent or ultra-low speaker output:
Zenbook 14 UX3405MA
Community SSDT patch for broken BIOS _DSD:
https://github.com/smallcms/asus_zenbook_ux3405ma
Zenbook 14 OLED (UX3402)
Manual ACPI/DSD workaround gist:
https://gist.github.com/lamperez/862763881c0e1c812392b5574727f6ff
Zenbook UM3402Y (Ubuntu 23.10)
Ask Ubuntu: no speaker sound because CSC3551 can’t drive CS35L41 without ACPI data:
https://askubuntu.com/q/1488979
Zenbook UP6502ZD
Ask Ubuntu: “No sound via speakers…the old Cirrus amp” due to missing DSD:
https://askubuntu.com/q/1495037
Zenbook 3402VA (Linux Mint)
Mint Forums: identical “no-speaker” symptoms; only headphone/HDMI work:
https://forums.linuxmint.com/viewtopic.php?t=410541
Zenbook Pro 14 UX6404
GitHub issue: missing ACPI _DSD for CSC3551 → amp init fails:
https://github.com/thor2002ro/asus_zenbook_ux3402za/issues/3
ROG GX650P
ArchWiki documents too-quiet speakers and a kernel quirk needed for CS35L41:
https://wiki.archlinux.org/title/ASUS_ROG_GX650P
SO:
1. Please release a BIOS/EC update for UX3405MA (≥ 305) that populates the correct ACPI _DSD entries (spk-id-gpios, amp-gpios, etc.).
2. Please publish the official CS35L41 tuning files (.bincfg for 14/16/19 dB) used in Windows, so Linux drivers can load them without reverse-engineering.
These minimal changes have fixed the issue on many other ASUS models—without them, UX3405MA speakers remain unusable under Linux. Thank you for considering.
05-14-2025 05:56 PM
@whitemankpi
Thank you for providing the information. However, as mentioned in previous responses, we have not tested the Linux system and therefore cannot ensure its stability and compatibility. We can assist with issues related to the Microsoft system. If you confirm that the issue also occurs on the Microsoft system, could you please provide the usage scenario and software version information for the Microsoft system? We apologize for any inconvenience caused.