linux-pm.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] thermal: exynos: Disable the regulator on probe failure
@ 2015-06-08  1:35 Krzysztof Kozlowski
  2015-06-08  6:54 ` Javier Martinez Canillas
  2015-06-08 16:14 ` Lukasz Majewski
  0 siblings, 2 replies; 7+ messages in thread
From: Krzysztof Kozlowski @ 2015-06-08  1:35 UTC (permalink / raw)
  To: Lukasz Majewski, Zhang Rui, Eduardo Valentin, Kukjin Kim,
	Krzysztof Kozlowski, linux-pm, linux-samsung-soc,
	linux-arm-kernel, linux-kernel
  Cc: stable

During probe the regulator (if present) was enabled but not disabled in
case of failure. So an unsuccessful probe lead to enabling the
regulator which was actually not needed because the device was not
enabled.

Additionally each deferred probe lead to increase of regulator enable
count so it would not be effectively disabled during removal of the
device.

Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Fixes: 498d22f616f6 ("thermal: exynos: Support for TMU regulator defined at device tree")
Cc: <stable@vger.kernel.org>

---

I am not entirely convinced that this should go to stable. Leaving a
regulator enabled in case of probe failure (no exynos TMU device) or
after deferred probe (regulator won't be disabled during device removal)
is not a critical issue, just leaks power.
---
 drivers/thermal/samsung/exynos_tmu.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/thermal/samsung/exynos_tmu.c b/drivers/thermal/samsung/exynos_tmu.c
index 531f4b179871..13c3aceed19d 100644
--- a/drivers/thermal/samsung/exynos_tmu.c
+++ b/drivers/thermal/samsung/exynos_tmu.c
@@ -1392,6 +1392,8 @@ err_clk_sec:
 	if (!IS_ERR(data->clk_sec))
 		clk_unprepare(data->clk_sec);
 err_sensor:
+	if (!IS_ERR_OR_NULL(data->regulator))
+		regulator_disable(data->regulator);
 	thermal_zone_of_sensor_unregister(&pdev->dev, data->tzd);
 
 	return ret;
-- 
1.9.1


^ permalink raw reply related	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2015-07-06 15:05 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-06-08  1:35 [PATCH] thermal: exynos: Disable the regulator on probe failure Krzysztof Kozlowski
2015-06-08  6:54 ` Javier Martinez Canillas
2015-06-08 16:14 ` Lukasz Majewski
2015-07-06  4:00   ` Krzysztof Kozlowski
2015-07-06  7:01     ` Lukasz Majewski
2015-07-06  7:02       ` Krzysztof Kozlowski
2015-07-06 15:05     ` Lukasz Majewski

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).