mbox series

[v4,0/2] Support temperature trips by HWMON core and LM90 driver

Message ID 20210621213153.28247-1-digetx@gmail.com (mailing list archive)
Headers show
Series Support temperature trips by HWMON core and LM90 driver | expand

Message

Dmitry Osipenko June 21, 2021, 9:31 p.m. UTC
Hi,

It's typical for embedded devices to use LM90-compatible sensor for
monitoring of CPU core and skin temperatures. The sensor is often
used by thermal zone that performs passive cooling and emergency
shutdown on overheat, hence it's more optimal to use interrupt for
a faster notification about temperature changes. Thermal framework
provides set_trips() callback for programming of temperature trips,
let's support it by HWMON.

Changelog:

v4: - Extended commit message of the set_trips() patch, saying that
      it has no effect on sensors that can't set trips. This was
      suggested by Guenter Roeck.

    - The channels are now iterated starting from 0 instead of 1 in the
      set_trips() callback. This was suggested by Guenter Roeck.

    - Moved out declaration of the err variable into the upper scope of
      set_trips(), like it was suggested by Guenter Roeck. The checkpatch
      normally warns about missing empty line after a declaration, but it
      couldn't detect this case here.

    - Replaced the err < 0 comparisons with err != 0, since write callback
      of the chip ops isn't supposed to return positive values. This was
      suggested by Guenter Roeck.

v3: - Improved patch that fixes integer overflows by fixing the hysteresis
      underflow and improving the commit message, telling that min/max/crit
      fixes are only related to the LM99 sensor. Thanks to Guenter Roeck
      for the suggestion.

v2: - Reworked set_trips() by making it generic. Now callback invokes
      the min/max temperature write method directly, instead of using
      additional new hwmon callback. This was suggested by Guenter Roeck.

    - Added new patch that fixes integer overflows in the LM90 driver.
      The fixes are necessary for supporting set_trips().

Dmitry Osipenko (2):
  hwmon: (lm90) Prevent integer underflows of temperature calculations
  hwmon: Support set_trips() of thermal device ops

 drivers/hwmon/hwmon.c | 33 +++++++++++++++++++++++++++++++++
 drivers/hwmon/lm90.c  |  9 +++++++++
 2 files changed, 42 insertions(+)