summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZhang Qilong <zhangqilong3@huawei.com>2022-09-27 22:26:01 +0800
committerMark Brown <broonie@kernel.org>2022-09-27 18:16:44 +0100
commit0325cc0ac7980e1c7b744aab8df59afab6daeb43 (patch)
tree66b3e8ed5c7b26ab8f89208412ae7200cfccc277
parentb9a0da5b2edcae2a901b85c8cc42efc5bec4bd7b (diff)
downloadlinux-stable-0325cc0ac7980e1c7b744aab8df59afab6daeb43.tar.gz
linux-stable-0325cc0ac7980e1c7b744aab8df59afab6daeb43.tar.bz2
linux-stable-0325cc0ac7980e1c7b744aab8df59afab6daeb43.zip
ASoC: stm32: spdifrx: Fix PM disable depth imbalance in stm32_spdifrx_probe
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 stm32_spdifrx_probe. Fixes:ac5e3efd55868 ("ASoC: stm32: spdifrx: add pm_runtime support") Signed-off-by: Zhang Qilong <zhangqilong3@huawei.com> Reviewed-by: Olivier Moysan <olivier.moysan@foss.st.com> Link: https://lore.kernel.org/r/20220927142601.64266-3-zhangqilong3@huawei.com Signed-off-by: Mark Brown <broonie@kernel.org>
-rw-r--r--sound/soc/stm/stm32_spdifrx.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sound/soc/stm/stm32_spdifrx.c b/sound/soc/stm/stm32_spdifrx.c
index 0f7146756717..d399c906bb92 100644
--- a/sound/soc/stm/stm32_spdifrx.c
+++ b/sound/soc/stm/stm32_spdifrx.c
@@ -1002,8 +1002,6 @@ static int stm32_spdifrx_probe(struct platform_device *pdev)
udelay(2);
reset_control_deassert(rst);
- pm_runtime_enable(&pdev->dev);
-
pcm_config = &stm32_spdifrx_pcm_config;
ret = snd_dmaengine_pcm_register(&pdev->dev, pcm_config, 0);
if (ret)
@@ -1036,6 +1034,8 @@ static int stm32_spdifrx_probe(struct platform_device *pdev)
FIELD_GET(SPDIFRX_VERR_MIN_MASK, ver));
}
+ pm_runtime_enable(&pdev->dev);
+
return ret;
error: