On Mon, Jul 6, 2015 at 9:19 AM, Sascha Hauer <s.hauer@xxxxxxxxxxxxxx> wrote: > The thermal code uses int, long and unsigned long for temperatures > in different places. > > Using an unsigned type limits the thermal framework to positive > temperatures without need. Also several drivers currently will report > temperatures near UINT_MAX for temperatures below 0°C. This will probably > immediately shut the machine down due to overtemperature if started below > 0°C. > > 'long' is 64bit on several architectures. This is not needed since INT_MAX °mC > is above the melting point of all known materials. > > Consistently use a plain 'int' for temperatures throughout the thermal code and > the drivers. This only changes the places in the drivers where the temperature > is passed around as pointer, when drivers internally use another type this is > not changed. > > Signed-off-by: Sascha Hauer <s.hauer@xxxxxxxxxxxxxx> > Cc: Zhang Rui <rui.zhang@xxxxxxxxx> > Cc: Eduardo Valentin <edubezval@xxxxxxxxx> > Cc: linux-pm@xxxxxxxxxxxxxxx > Cc: linux-kernel@xxxxxxxxxxxxxxx > Cc: Jean Delvare <jdelvare@xxxxxxx> > Cc: Peter Feuerer <peter@xxxxxxxx> > Cc: Heiko Stuebner <heiko@xxxxxxxxx> > Cc: Lukasz Majewski <l.majewski@xxxxxxxxxxx> > Cc: Stephen Warren <swarren@xxxxxxxxxxxxx> > Cc: Thierry Reding <thierry.reding@xxxxxxxxx> > Cc: linux-acpi@xxxxxxxxxxxxxxx > Cc: platform-driver-x86@xxxxxxxxxxxxxxx > Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx > Cc: linux-omap@xxxxxxxxxxxxxxx > Cc: linux-samsung-soc@xxxxxxxxxxxxxxx > Cc: Guenter Roeck <linux@xxxxxxxxxxxx> > Cc: Rafael J. Wysocki <rjw@xxxxxxxxxxxxx> > Cc: Maxime Ripard <maxime.ripard@xxxxxxxxxxxxxxxxxx> > Cc: Darren Hart <dvhart@xxxxxxxxxxxxx> > Cc: lm-sensors@xxxxxxxxxxxxxx For rcar-thermal: Acked-by: Geert Uytterhoeven <geert+renesas@xxxxxxxxx> > diff --git a/drivers/thermal/rcar_thermal.c b/drivers/thermal/rcar_thermal.c > index fe4e767..5d4ae7d 100644 > --- a/drivers/thermal/rcar_thermal.c > +++ b/drivers/thermal/rcar_thermal.c > @@ -200,8 +200,7 @@ err_out_unlock: > return ret; > } > > -static int rcar_thermal_get_temp(struct thermal_zone_device *zone, > - unsigned long *temp) > +static int rcar_thermal_get_temp(struct thermal_zone_device *zone, int *temp) > { > struct rcar_thermal_priv *priv = rcar_zone_to_priv(zone); > > @@ -235,7 +234,7 @@ static int rcar_thermal_get_trip_type(struct thermal_zone_device *zone, > } > > static int rcar_thermal_get_trip_temp(struct thermal_zone_device *zone, > - int trip, unsigned long *temp) > + int trip, int *temp) > { > struct rcar_thermal_priv *priv = rcar_zone_to_priv(zone); > struct device *dev = rcar_priv_to_dev(priv); > @@ -299,7 +298,7 @@ static void _rcar_thermal_irq_ctrl(struct rcar_thermal_priv *priv, int enable) > static void rcar_thermal_work(struct work_struct *work) > { > struct rcar_thermal_priv *priv; > - unsigned long cctemp, nctemp; > + int cctemp, nctemp; > > priv = container_of(work, struct rcar_thermal_priv, work.work); > Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds -- To unsubscribe from this list: send the line "unsubscribe platform-driver-x86" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html