]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
thermal/drivers/bcm2711: Don't clamp temperature at zero
authorStefan Wahren <stefan.wahren@i2se.com>
Tue, 12 Apr 2022 19:54:23 +0000 (21:54 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 9 Jun 2022 08:21:11 +0000 (10:21 +0200)
[ Upstream commit 106e0121e243de4da7d634338089a68a8da2abe9 ]

The thermal sensor on BCM2711 is capable of negative temperatures, so don't
clamp the measurements at zero. Since this was the only use for variable t,
drop it.

This change based on a patch by Dom Cobley, who also tested the fix.

Fixes: 59b781352dc4 ("thermal: Add BCM2711 thermal driver")
Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
Acked-by: Florian Fainelli <f.fainelli@gmail.com>
Link: https://lore.kernel.org/r/20220412195423.104511-1-stefan.wahren@i2se.com
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/thermal/broadcom/bcm2711_thermal.c

index 67c2a737bc9d914e9b86ec0606694d0594bfb911..7b536c8a59dca952a3d48cc73330cdad7cee4ffa 100644 (file)
@@ -38,7 +38,6 @@ static int bcm2711_get_temp(void *data, int *temp)
        int offset = thermal_zone_get_offset(priv->thermal);
        u32 val;
        int ret;
-       long t;
 
        ret = regmap_read(priv->regmap, AVS_RO_TEMP_STATUS, &val);
        if (ret)
@@ -50,9 +49,7 @@ static int bcm2711_get_temp(void *data, int *temp)
        val &= AVS_RO_TEMP_STATUS_DATA_MSK;
 
        /* Convert a HW code to a temperature reading (millidegree celsius) */
-       t = slope * val + offset;
-
-       *temp = t < 0 ? 0 : t;
+       *temp = slope * val + offset;
 
        return 0;
 }