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>
#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>
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)