]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
Support wm_adsp hibernation for runtime suspend
authorMark Brown <broonie@kernel.org>
Mon, 2 Mar 2026 13:35:21 +0000 (13:35 +0000)
committerMark Brown <broonie@kernel.org>
Mon, 2 Mar 2026 13:35:21 +0000 (13:35 +0000)
commit727d1a1c4eb272164a84d4400dddcdf26ecf502a
treeaef6a130326beb8307ccbd71509643e4e3ce6b52
parenta8fd392f6e3ad33b87dfdb6d438f05c5bc29d2e6
parent17c6bf433742e0c1ff5ce175145877c0194e4a7a
Support wm_adsp hibernation for runtime suspend

Merge series from Stefan Binding <sbinding@opensource.cirrus.com>:

When the CS35L41 and CS35L45 drivers suspend, they are put into
hibernation, and the regmap goes into cache_only, but the firmware is
still running, and wm_adsp is not stopped. If userspace attempts to
read a firmware control, it will perform a regmap_raw_read() and this
will produce an error in the kernel log.

To prevent these spurious errors, add an apis into cs_dsp and wm_adsp
to allow wm_adsp to hibernate. In this hibernation mode, reads or
writes to the dsp controls would be rejected with -EPERM rather than
-EBUSY, and no error will be printed to the kernel log.