summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAravind Anilraj <aravindanilraj0702@gmail.com>2026-04-01 18:05:04 -0400
committerMark Brown <broonie@kernel.org>2026-04-03 15:14:59 +0100
commita02496a29463e7f0d1643e83aab28adb3dd03f1a (patch)
treee8f299db6ac8a7801722f392a2980030e0d71ec9
parent7aaa8047eafd0bd628065b15757d9b48c5f9c07d (diff)
ASoC: Intel: bytcr_rt5640: Fix MCLK leak on platform_clock_control error
If byt_rt5640_prepare_and_enable_pll1() fails, the function returns without calling clk_disable_unprepare() on priv->mclk, which was already enabled earlier in the same code path. Add the missing cleanup call to prevent the clock from leaking. Signed-off-by: Aravind Anilraj <aravindanilraj0702@gmail.com> Reviewed-by: Cezary Rojewski <cezary.rojewski@intel.com> Link: https://patch.msgid.link/20260401220507.23557-2-aravindanilraj0702@gmail.com Signed-off-by: Mark Brown <broonie@kernel.org>
-rw-r--r--sound/soc/intel/boards/bytcr_rt5640.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/sound/soc/intel/boards/bytcr_rt5640.c b/sound/soc/intel/boards/bytcr_rt5640.c
index 103e0b445603..e4c21c9c5b38 100644
--- a/sound/soc/intel/boards/bytcr_rt5640.c
+++ b/sound/soc/intel/boards/bytcr_rt5640.c
@@ -289,6 +289,8 @@ static int platform_clock_control(struct snd_soc_dapm_widget *w,
return ret;
}
ret = byt_rt5640_prepare_and_enable_pll1(codec_dai, 48000);
+ if (ret < 0)
+ clk_disable_unprepare(priv->mclk);
} else {
/*
* Set codec clock source to internal clock before