Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 45387ca4 authored by Zhang Qilong's avatar Zhang Qilong Committed by Greg Kroah-Hartman
Browse files

ASoC: wm5102: Fix PM disable depth imbalance in wm5102_probe



[ Upstream commit fcbb60820cd3008bb44334a0395e5e57ccb77329 ]

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 wm5102_probe.

Fixes:93e8791d ("ASoC: wm5102: Initial driver")

Signed-off-by: default avatarZhang Qilong <zhangqilong3@huawei.com>
Link: https://lore.kernel.org/r/20220928160116.125020-4-zhangqilong3@huawei.com


Signed-off-by: default avatarMark Brown <broonie@kernel.org>
Signed-off-by: default avatarSasha Levin <sashal@kernel.org>
parent 371d4dbe
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -2084,9 +2084,6 @@ static int wm5102_probe(struct platform_device *pdev)
		regmap_update_bits(arizona->regmap, wm5102_digital_vu[i],
				   WM5102_DIG_VU, WM5102_DIG_VU);

	pm_runtime_enable(&pdev->dev);
	pm_runtime_idle(&pdev->dev);

	ret = arizona_request_irq(arizona, ARIZONA_IRQ_DSP_IRQ1,
				  "ADSP2 Compressed IRQ", wm5102_adsp2_irq,
				  wm5102);
@@ -2119,6 +2116,9 @@ static int wm5102_probe(struct platform_device *pdev)
		goto err_spk_irqs;
	}

	pm_runtime_enable(&pdev->dev);
	pm_runtime_idle(&pdev->dev);

	return ret;

err_spk_irqs: