Skip to content

[BUG] ASUS ROG ALC285/CS35L41 internal speakers develop runtime crackling, Bluetooth audio unaffected #886

Description

@myomeroz

Pre-flight checklist

  • I have searched existing issues and this is not a duplicate.
  • I have read the Contributing Guidelines.
  • I have verified the issue is reproducible with the latest available CachyOS kernel.
  • I have tried to reproduce the issue on Arch Linux's linux kernel.

Upstream / vanilla kernel check

I have not tested with a vanilla/upstream kernel

Kernel variant

linux-cachyos-lts

System information (cachyos-bugreport.sh)

cachyos-bugreport.sh output was too long for the GitHub issue field.
Relevant system information is provided manually below.

Kernel currently used:
6.18.35-1-cachyos-lts

Issue was also reproduced on latest linux-cachyos main kernel.

CPU:
Intel Core i9-14900HX

GPU:
NVIDIA GeForce RTX 4090 Laptop GPU

Audio:
Realtek ALC285 / ALC269 + 2x Cirrus Logic CS35L41 smart amps

Packages:
linux-firmware-cirrus 1:20260519-1
linux-firmware 1:20260519-1
alsa-ucm-conf 1.2.16.1-1
alsa-lib 1.2.16.1-1.1
pipewire 1:1.6.6-1.1
wireplumber 0.5.14-1.1
pipewire-pulse 1:1.6.6-1.1

Desktop:
KDE Plasma Wayland

Bluetooth audio:
Clean, no crackling.

Internal speakers:
Runtime crackling / popping during video playback.

Manual system information (if cachyos-bugreport.sh is unavailable)

* Kernel version: `6.18.35-1-cachyos-lts`
* Also tested: latest `linux-cachyos` main kernel, issue also reproduced there
* CPU: Intel Core i9-14900HX
* GPU: NVIDIA GeForce RTX 4090 Laptop GPU
* Audio path: Realtek ALC285 / ALC269 + 2x Cirrus Logic CS35L41 smart amps
* Firmware package: `linux-firmware-cirrus 1:20260519-1`
* ALSA packages:

  * `alsa-ucm-conf 1.2.16.1-1`
  * `alsa-lib 1.2.16.1-1.1`
* PipeWire packages:

  * `pipewire 1:1.6.6-1.1`
  * `wireplumber 0.5.14-1.1`
  * `pipewire-pulse 1:1.6.6-1.1`
* Bluetooth audio: clean, no crackling
* Internal speakers: crackling / popping during runtime video playback

Bug description

Internal laptop speakers develop crackling / popping noise during normal runtime usage, especially while watching videos.

Bluetooth audio is completely clean.

The problem seems limited to the internal speaker path:

PipeWire -> ALSA/HDA -> Realtek ALC285/ALC269 -> Cirrus CS35L41 smart amps -> internal speakers

Bluetooth audio bypasses this path and does not crackle.

The issue does not appear to be only a PipeWire issue, because it was also reproduced with direct ALSA testing using:

speaker-test -D hw:0,0 -c2 -t wav

Restarting PipeWire / WirePlumber did not fix the issue.

Downgrading alsa-ucm-conf, alsa-lib, and lib32-alsa-lib did not fix the issue.

Downgrading linux-firmware-cirrus from 1:20260519-1 to 1:20260410-1 also did not fix the issue.

On clean boot, dmesg shows both CS35L41 amps loading firmware correctly with FW EN: 1, but after some runtime/video playback the internal speaker crackling returns.

Fedora KDE Live had clean audio during a short test. After returning to CachyOS, internal speaker audio initially sounded clean, but the crackling returned while watching video.

Steps to reproduce

Boot CachyOS on an ASUS ROG laptop with Realtek ALC285/ALC269 + Cirrus CS35L41 internal speaker amps.
Use internal speakers as the active audio output.
Watch videos or play normal audio for a while.
Crackling / popping starts from the internal speakers.
Switch to Bluetooth headphones.
Bluetooth audio remains clean.

Expected behavior

Internal speakers should keep playing clean audio without crackling or popping, the same way Bluetooth audio does.

Actual behavior

Internal speakers start producing crackling / popping during runtime video/audio playback. Bluetooth audio remains completely clean.

Logs / stack traces

Relevant clean boot dmesg:


Serial bus multi instantiate pseudo device driver CSC3551:00: Instantiated 2 SPI devices.
cs35l41-hda spi1-CSC3551:00-cs35l41-hda.0: Adding DSD properties for 10433A50
cs35l41-hda spi1-CSC3551:00-cs35l41-hda.0: Using extra _DSD properties, bypassing _DSD in ACPI
cs35l41-hda spi1-CSC3551:00-cs35l41-hda.0: Cirrus Logic CS35L41 (35a40), Revision: B2
cs35l41-hda spi1-CSC3551:00-cs35l41-hda.1: Adding DSD properties for 10433A50
cs35l41-hda spi1-CSC3551:00-cs35l41-hda.1: Using extra _DSD properties, bypassing _DSD in ACPI
cs35l41-hda spi1-CSC3551:00-cs35l41-hda.1: Reset line busy, assuming shared reset
cs35l41-hda spi1-CSC3551:00-cs35l41-hda.1: Cirrus Logic CS35L41 (35a40), Revision: B2
cs35l41-hda spi1-CSC3551:00-cs35l41-hda.0: DSP1: Firmware: 400a4 vendor: 0x2 v0.43.1, 2 algorithms
cs35l41-hda spi1-CSC3551:00-cs35l41-hda.0: Calibration applied: R0=11488
cs35l41-hda spi1-CSC3551:00-cs35l41-hda.0: Firmware Loaded - Type: spk-prot, Gain: 17
cs35l41-hda spi1-CSC3551:00-cs35l41-hda.0: CS35L41 Bound - SSID: 10433A50, BST: 0, VSPK: 0, CH: L, FW EN: 1, SPKID: 0
snd_hda_codec_alc269 hdaudioC0D0: bound spi1-CSC3551:00-cs35l41-hda.0
cs35l41-hda spi1-CSC3551:00-cs35l41-hda.1: DSP1: Firmware: 400a4 vendor: 0x2 v0.43.1, 2 algorithms
cs35l41-hda spi1-CSC3551:00-cs35l41-hda.1: Calibration applied: R0=11818
cs35l41-hda spi1-CSC3551:00-cs35l41-hda.1: Firmware Loaded - Type: spk-prot, Gain: 17
cs35l41-hda spi1-CSC3551:00-cs35l41-hda.1: CS35L41 Bound - SSID: 10433A50, BST: 0, VSPK: 0, CH: R, FW EN: 1, SPKID: 0
snd_hda_codec_alc269 hdaudioC0D0: bound spi1-CSC3551:00-cs35l41-hda.1


Earlier bad-state logs included messages such as:


IRQ sync failed to resume: -13
Falling back to default firmware
Unable to find firmware and tuning
Cannot Initialize Firmware. Error: -2
Cannot Run Firmware, reverting to dsp bypass
Failed to add KControl ... = -16
probe with driver cs35l41-hda failed with error -16


Question:

Could this be related to the CachyOS kernel, `cs35l41-hda`, `snd_hda_intel`, runtime power management, or a CS35L41 smart amp runtime state issue?

Additional system information

Desktop environment: KDE Plasma on Wayland.
The same machine had working internal speaker audio on CachyOS for months before this issue started.
Bluetooth headphones are unaffected.
Fedora KDE Live had clean internal speaker audio during a short test.

bad-runtime-after-fedora-live.txt

good-after-fedora-live.txt

cachyos-bugreport.txt

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type

Fields

No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions