| From 9d122b2233b055d628befab92e300e729bf31230 Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Wed, 7 Apr 2021 17:45:35 +0200 |
| Subject: memory: samsung: exynos5422-dmc: handle clk_set_parent() failure |
| |
| From: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com> |
| |
| [ Upstream commit 132c17c3ff878c7beaba51bdd275d5cc654c0e33 ] |
| |
| clk_set_parent() can fail and ignoring such case could lead to invalid |
| clock setup for given frequency. |
| |
| Addresses-Coverity: Unchecked return value |
| Fixes: 6e7674c3c6df ("memory: Add DMC driver for Exynos5422") |
| Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com> |
| Reviewed-by: Lukasz Luba <lukasz.luba@arm.com> |
| Link: https://lore.kernel.org/r/20210407154535.70756-1-krzysztof.kozlowski@canonical.com |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| drivers/memory/samsung/exynos5422-dmc.c | 4 +++- |
| 1 file changed, 3 insertions(+), 1 deletion(-) |
| |
| diff --git a/drivers/memory/samsung/exynos5422-dmc.c b/drivers/memory/samsung/exynos5422-dmc.c |
| index c5ee4121a4d2..3d230f07eaf2 100644 |
| --- a/drivers/memory/samsung/exynos5422-dmc.c |
| +++ b/drivers/memory/samsung/exynos5422-dmc.c |
| @@ -1298,7 +1298,9 @@ static int exynos5_dmc_init_clks(struct exynos5_dmc *dmc) |
| |
| dmc->curr_volt = target_volt; |
| |
| - clk_set_parent(dmc->mout_mx_mspll_ccore, dmc->mout_spll); |
| + ret = clk_set_parent(dmc->mout_mx_mspll_ccore, dmc->mout_spll); |
| + if (ret) |
| + return ret; |
| |
| clk_prepare_enable(dmc->fout_bpll); |
| clk_prepare_enable(dmc->mout_bpll); |
| -- |
| 2.30.2 |
| |