hwmon: (lm90) Only re-read registers if volatile
authorGuenter Roeck <linux@roeck-us.net>
Fri, 5 Nov 2021 23:04:52 +0000 (16:04 -0700)
committerGuenter Roeck <linux@roeck-us.net>
Wed, 13 Jul 2022 15:38:17 +0000 (08:38 -0700)
commit8f19501d87e0e79a50b60ead7e114ed5a8eea34e
tree2c12deb3f0b5974ba4183726bf5eb4a6c3a9317d
parentb2644494a4c7145a05af01bee1df8549a71efc20
hwmon: (lm90) Only re-read registers if volatile

When reading 16-bit volatile registers, the code uses a trick to
determine if a temperature is consistent: It reads the high part
of the register twice. If the values are the same, the code assumes
that the reading is consistent. If the value differs, the code
re-reads the second register as well and assumes that it now has
correct values.

This is only necessary for volatile registers. Add a parameter to
lm90_read16() to indicate if the register is volatile to avoid the
extra overhead for non-volatile registers.

Signed-off-by: Guenter Roeck <linux@roeck-us.net>
drivers/hwmon/lm90.c