Re: [RFC PATCH v2] ASoC: report component resume callback errors

From: Kuninori Morimoto

Date: Mon Aug 31 2026 - 22:32:04 EST



Hi

> snd_soc_component_driver::resume() returns an int, but
> snd_soc_component_resume() discards it. In the deferred resume path,
> snd_soc_resume() has already returned success to the PM core, so an error
> cannot be propagated back to that caller.
>
> Pass the callback result through the existing ASoC component error helper.
> This reports negative results with component context while preserving the
> established best-effort behavior: the component is still marked resumed
> and the worker continues DAPM resume, digital unmute and card power
> publication.
>
> There are existing callbacks, including tas2562_resume() and
> atmel_classd_component_resume(), which directly return regcache_sync()
> errors. Those errors currently disappear at the component wrapper.
>
> This only makes errors already returned by component callbacks observable.
> It does not expose operations that individual callbacks ignore, and it
> does not add rollback or retry semantics. Callbacks which already report
> an error may retain their driver-specific message in addition to the
> common ASoC component context, as with other ASoC component wrappers.
>
> This is an RFC to confirm that reporting and continuing is the intended
> contract for deferred component resume failures.
>
> Signed-off-by: Pengpeng Hou <pengpeng@xxxxxxxxxxx>
> ---

Indeed we can do nothing for resume case error.

Acked-by: Kuninori Morimoto <kuninori.morimoto.gx@xxxxxxxxxxx>

Thank you for your help !!

Best regards
---
Kuninori Morimoto