Executive brief
The Linux kernel's FSL Audio Mixer driver did not properly power on audio hardware during device initialization, causing register access attempts to target unpowered hardware and hang the system. This affects systems using this audio mixing component, particularly when ALSA controls or DAPM (Dynamic Audio Power Management) paths initialize before the hardware is powered. The fix ensures hardware is always powered and its clocks enabled during probe, preventing system hangs during normal audio operations.
Technical details
The vulnerability exists in the FSL Audio Mixer (fsl_audmix) driver in sound/soc/fsl/fsl_audmix.c. After pm_runtime_enable() is called in the probe function, the AUDMIX hardware block remains powered off until the first runtime resume. However, register writes from DAPM configuration or ALSA control initialization paths may occur between probe() and the first runtime resume, targeting unpowered hardware and causing system hangs. The fix calls pm_runtime_resume_and_get() immediately after pm_runtime_enable() to power up the hardware and enable clocks, then releases the reference with pm_runtime_put(). For systems with CONFIG_PM disabled or runtime PM not available, the fix explicitly calls fsl_audmix_runtime_resume() to ensure hardware initialization regardless of PM configuration. This is a kernel code fix applied via upstream patch 3359ba93d01a23b2e4249e9e44ccfe48eb9c5d71.
Affected products
- Linux Linux kernel affected versions unknown; patch applies to linux 3.x through 7.x stable trees
Timeline
- 2026-09-17: disclosed
- 2026-06-29: patched: upstream commit 3359ba93d01a23b2e4249e9e44ccfe48eb9c5d71