pm_runtime_disable was missed in cleanup operation, which corresponds to the earlier call to pm_runtime_enable.
To fix this, add pm_runtime_disable() on error path.
Fixes: 9e28f6532c61 ("ASoC: fsl_mqs: Add MQS component driver") Signed-off-by: Liliang Ye yll@hust.edu.cn Reviewed-by: Dan Carpenter error27@gmail.com --- sound/soc/fsl/fsl_mqs.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/sound/soc/fsl/fsl_mqs.c b/sound/soc/fsl/fsl_mqs.c index 32d20d351bbf..129d426c60c4 100644 --- a/sound/soc/fsl/fsl_mqs.c +++ b/sound/soc/fsl/fsl_mqs.c @@ -251,9 +251,13 @@ static int fsl_mqs_probe(struct platform_device *pdev) ret = devm_snd_soc_register_component(&pdev->dev, &soc_codec_fsl_mqs, &fsl_mqs_dai, 1); if (ret) - return ret; + goto err_pm_disable;
return 0; + +err_pm_disable: + pm_runtime_disable(&pdev->dev); + return ret; }
static int fsl_mqs_remove(struct platform_device *pdev)