summaryrefslogtreecommitdiffstats
path: root/drivers/thermal
diff options
context:
space:
mode:
authorFabio Estevam <festevam@gmail.com>2020-12-03 00:24:48 +0100
committerDaniel Lezcano <daniel.lezcano@linaro.org>2020-12-04 20:46:03 +0100
commite57eb8b5050c9b6d63eea26b194d96744fe4018a (patch)
tree3060d7b9edcef14004bc8b4ea8abae37211201b1 /drivers/thermal
parentthermal: imx8mm: Print the correct error code (diff)
downloadlinux-e57eb8b5050c9b6d63eea26b194d96744fe4018a.tar.xz
linux-e57eb8b5050c9b6d63eea26b194d96744fe4018a.zip
thermal: imx8mm: Disable the clock on probe failure
Prior to returning an error in probe, disable the previously enabled clock. Signed-off-by: Fabio Estevam <festevam@gmail.com> Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org> Link: https://lore.kernel.org/r/20201202232448.2692-2-festevam@gmail.com
Diffstat (limited to 'drivers/thermal')
-rw-r--r--drivers/thermal/imx8mm_thermal.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/thermal/imx8mm_thermal.c b/drivers/thermal/imx8mm_thermal.c
index ce7cb6452c52..7442e013738f 100644
--- a/drivers/thermal/imx8mm_thermal.c
+++ b/drivers/thermal/imx8mm_thermal.c
@@ -170,7 +170,7 @@ static int imx8mm_tmu_probe(struct platform_device *pdev)
dev_err(&pdev->dev,
"failed to register thermal zone sensor[%d]: %d\n",
i, ret);
- return ret;
+ goto disable_clk;
}
tmu->sensors[i].hw_id = i;
}
@@ -185,6 +185,10 @@ static int imx8mm_tmu_probe(struct platform_device *pdev)
imx8mm_tmu_enable(tmu, true);
return 0;
+
+disable_clk:
+ clk_disable_unprepare(tmu->clk);
+ return ret;
}
static int imx8mm_tmu_remove(struct platform_device *pdev)