diff options
| author | Richard Fitzgerald <rf@opensource.cirrus.com> | 2026-05-05 19:11:24 +0300 |
|---|---|---|
| committer | Mark Brown <broonie@kernel.org> | 2026-05-06 15:22:51 +0300 |
| commit | fd4d83e1437d6395021b21531e187c8a67ac21b0 (patch) | |
| tree | fb065345ee921af09d0111740d9a1667776135c6 | |
| parent | bee87cf0f1248c0f20710d7a79df41fe892d9f88 (diff) | |
| download | linux-fd4d83e1437d6395021b21531e187c8a67ac21b0.tar.xz | |
ASoC: cs35l56: Destroy workqueue in probe error path
The error path in cs35l56_common_probe() should call destroy_workqueue()
on the workqueue that was created by cs35l56_dsp_init().
Fixes: e49611252900 ("ASoC: cs35l56: Add driver for Cirrus Logic CS35L56")
Signed-off-by: Richard Fitzgerald <rf@opensource.cirrus.com>
Link: https://patch.msgid.link/20260505161124.3621000-3-rf@opensource.cirrus.com
Signed-off-by: Mark Brown <broonie@kernel.org>
| -rw-r--r-- | sound/soc/codecs/cs35l56.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/sound/soc/codecs/cs35l56.c b/sound/soc/codecs/cs35l56.c index e847bb32af2e..849d70ca23d6 100644 --- a/sound/soc/codecs/cs35l56.c +++ b/sound/soc/codecs/cs35l56.c @@ -1970,6 +1970,9 @@ err: gpiod_set_value_cansleep(cs35l56->base.reset_gpio, 0); regulator_bulk_disable(ARRAY_SIZE(cs35l56->supplies), cs35l56->supplies); + if (cs35l56->dsp_wq) + destroy_workqueue(cs35l56->dsp_wq); + return ret; } EXPORT_SYMBOL_NS_GPL(cs35l56_common_probe, "SND_SOC_CS35L56_CORE"); |
