The pm_runtime_enable will increase power disable depth. Thus a pairing decrement is needed on the error handling path to keep it balanced according to context. We fix it by calling pm_runtime_disable when error returns. Fixes:f289e55c6eeb4 ("ASoC: Add MediaTek MT6660 Speaker Amp Driver") Signed-off-by: Zhang Qilong <zhangqilong3@xxxxxxxxxx> --- v2: - call pm_runtime_disable when error returns --- sound/soc/codecs/mt6660.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/sound/soc/codecs/mt6660.c b/sound/soc/codecs/mt6660.c index 4971cd0b90f8..36220a1f80a6 100644 --- a/sound/soc/codecs/mt6660.c +++ b/sound/soc/codecs/mt6660.c @@ -509,6 +509,9 @@ static int mt6660_i2c_probe(struct i2c_client *client) ret = devm_snd_soc_register_component(chip->dev, &mt6660_component_driver, &mt6660_codec_dai, 1); + if (ret) + pm_runtime_disable(chip->dev); + return ret; probe_fail: _mt6660_chip_power_on(chip, 0); -- 2.25.1