ASoC: mt6660: Fix PM disable depth imbalance in mt6660_i2c_probe
[ Upstream commit b73f11e895 ]
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 moving
pm_runtime_enable to the endding of mt6660_i2c_probe.
Fixes:f289e55c6eeb4 ("ASoC: Add MediaTek MT6660 Speaker Amp Driver")
Signed-off-by: Zhang Qilong <zhangqilong3@huawei.com>
Link: https://lore.kernel.org/r/20220928160116.125020-5-zhangqilong3@huawei.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
37e3e01c9a
commit
f182de42d7
1 changed files with 6 additions and 2 deletions
|
|
@ -504,13 +504,17 @@ static int mt6660_i2c_probe(struct i2c_client *client,
|
|||
dev_err(chip->dev, "read chip revision fail\n");
|
||||
goto probe_fail;
|
||||
}
|
||||
pm_runtime_set_active(chip->dev);
|
||||
pm_runtime_enable(chip->dev);
|
||||
|
||||
ret = devm_snd_soc_register_component(chip->dev,
|
||||
&mt6660_component_driver,
|
||||
&mt6660_codec_dai, 1);
|
||||
if (!ret) {
|
||||
pm_runtime_set_active(chip->dev);
|
||||
pm_runtime_enable(chip->dev);
|
||||
}
|
||||
|
||||
return ret;
|
||||
|
||||
probe_fail:
|
||||
_mt6660_chip_power_on(chip, 0);
|
||||
mutex_destroy(&chip->io_lock);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue