Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ffe6e16f authored by Krzysztof Kozlowski's avatar Krzysztof Kozlowski Committed by Eduardo Valentin
Browse files

thermal: exynos: Reduce severity of too early temperature read



Thermal core tries to read temperature during sensor registering in
thermal_zone_of_sensor_register().  In that time Exynos TMU driver and
hardware are not yet initialized.  Commit 0eb875d8 ("thermal:
exynos: Reading temperature makes sense only when TMU is turned on")
added a boolean flag to prevent reading bogus temperature in such
case but it exposed warning message during boot:
	[    3.864913] thermal thermal_zone0: failed to read out thermal zone (-22)

Return EAGAIN in such case to skip omitting such message because it
might mislead user.

Signed-off-by: default avatarKrzysztof Kozlowski <krzk@kernel.org>
Acked-by: default avatarBartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
Signed-off-by: default avatarEduardo Valentin <edubezval@gmail.com>
parent 45f8b0dd
Loading
Loading
Loading
Loading
+7 −1
Original line number Original line Diff line number Diff line
@@ -666,8 +666,14 @@ static int exynos_get_temp(void *p, int *temp)
	struct exynos_tmu_data *data = p;
	struct exynos_tmu_data *data = p;
	int value, ret = 0;
	int value, ret = 0;


	if (!data || !data->tmu_read || !data->enabled)
	if (!data || !data->tmu_read)
		return -EINVAL;
		return -EINVAL;
	else if (!data->enabled)
		/*
		 * Called too early, probably
		 * from thermal_zone_of_sensor_register().
		 */
		return -EAGAIN;


	mutex_lock(&data->lock);
	mutex_lock(&data->lock);
	clk_enable(data->clk);
	clk_enable(data->clk);