[PATCH 2/4] ASoC: SDCA: enable pm_runtime before taking the initial reference

From: Srinivas Kandagatla

Date: Sun Oct 18 2026 - 15:24:46 EST


If devm_pm_runtime_enable() failed, the usage count taken earlier by
pm_runtime_get_noresume() was never dropped. Reorder so the get only
happens once enable has succeeded.

Fixes: 2d877d0659cb ("ASoC: SDCA: Add basic SDCA class driver")
Cc: stable@xxxxxxxxxxxxxxx
Assisted-by: LLM
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@xxxxxxxxxxxxxxxx>
---
sound/soc/sdca/sdca_class.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/sound/soc/sdca/sdca_class.c b/sound/soc/sdca/sdca_class.c
index bcc660aeb739..3361db188046 100644
--- a/sound/soc/sdca/sdca_class.c
+++ b/sound/soc/sdca/sdca_class.c
@@ -194,12 +194,13 @@ int sdca_class_probe(struct sdw_slave *sdw,
pm_runtime_set_autosuspend_delay(dev, 250);
pm_runtime_use_autosuspend(dev);
pm_runtime_set_active(dev);
- pm_runtime_get_noresume(dev);

ret = devm_pm_runtime_enable(dev);
if (ret)
return ret;

+ pm_runtime_get_noresume(dev);
+
queue_work(system_long_wq, &drv->boot_work);

return 0;
--
2.53.0