]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
thermal/drivers/broadcom: Use clamp to simplify bcm2835_thermal_temp2adc
authorThorsten Blum <thorsten.blum@linux.dev>
Mon, 5 Jan 2026 12:13:03 +0000 (13:13 +0100)
committerDaniel Lezcano <daniel.lezcano@linaro.org>
Wed, 21 Jan 2026 16:04:41 +0000 (17:04 +0100)
Use clamp() to simplify bcm2835_thermal_temp2adc() and improve its
readability. Explicitly cast BIT() to int to prevent a signedness error.

Signed-off-by: Thorsten Blum <thorsten.blum@linux.dev>
Reviewed-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Link: https://patch.msgid.link/20260105121308.1761-1-thorsten.blum@linux.dev
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
drivers/thermal/broadcom/bcm2835_thermal.c

index 685a5aee5e0dfb113638313a9086721beae09db3..c5105dfc6ec97a30dfa1ba73a4555c0ce1cfd133 100644 (file)
@@ -11,6 +11,7 @@
 #include <linux/err.h>
 #include <linux/io.h>
 #include <linux/kernel.h>
+#include <linux/minmax.h>
 #include <linux/module.h>
 #include <linux/of.h>
 #include <linux/of_address.h>
@@ -80,12 +81,7 @@ static int bcm2835_thermal_temp2adc(int temp, int offset, int slope)
        temp -= offset;
        temp /= slope;
 
-       if (temp < 0)
-               temp = 0;
-       if (temp >= BIT(BCM2835_TS_TSENSSTAT_DATA_BITS))
-               temp = BIT(BCM2835_TS_TSENSSTAT_DATA_BITS) - 1;
-
-       return temp;
+       return clamp(temp, 0, (int)BIT(BCM2835_TS_TSENSSTAT_DATA_BITS) - 1);
 }
 
 static int bcm2835_thermal_get_temp(struct thermal_zone_device *tz, int *temp)