]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
thermal/drivers/sprd: Fix raw temperature clamping in sprd_thm_rawdata_to_temp
authorThorsten Blum <thorsten.blum@linux.dev>
Sat, 7 Mar 2026 10:24:21 +0000 (11:24 +0100)
committerDaniel Lezcano <daniel.lezcano@kernel.org>
Mon, 9 Mar 2026 23:12:46 +0000 (00:12 +0100)
The raw temperature data was never clamped to SPRD_THM_RAW_DATA_LOW or
SPRD_THM_RAW_DATA_HIGH because the return value of clamp() was not used.
Fix this by assigning the clamped value to 'rawdata'.

Casting SPRD_THM_RAW_DATA_LOW and SPRD_THM_RAW_DATA_HIGH to u32 is also
redundant and can be removed.

Fixes: 554fdbaf19b1 ("thermal: sprd: Add Spreadtrum thermal driver support")
Signed-off-by: Thorsten Blum <thorsten.blum@linux.dev>
Signed-off-by: Daniel Lezcano <daniel.lezcano@kernel.org>
Reviewed-by: Baolin Wang <baolin.wang@linux.alibaba.com>
Cc: stable@vger.kernel.org
Link: https://patch.msgid.link/20260307102422.306055-2-thorsten.blum@linux.dev
drivers/thermal/sprd_thermal.c

index 70c879e75d85cdbd8321ee160059fab02a011b5b..44fa45f74da720e61aaad92ca09cab2bc7d4fafb 100644 (file)
@@ -178,7 +178,7 @@ static int sprd_thm_sensor_calibration(struct device_node *np,
 static int sprd_thm_rawdata_to_temp(struct sprd_thermal_sensor *sen,
                                    u32 rawdata)
 {
-       clamp(rawdata, (u32)SPRD_THM_RAW_DATA_LOW, (u32)SPRD_THM_RAW_DATA_HIGH);
+       rawdata = clamp(rawdata, SPRD_THM_RAW_DATA_LOW, SPRD_THM_RAW_DATA_HIGH);
 
        /*
         * According to the thermal datasheet, the formula of converting