hwmon: (lm90) enable extended range according to DTS node
authorHolger Brunck <holger.brunck@hitachienergy.com>
Tue, 17 May 2022 13:56:14 +0000 (15:56 +0200)
committerGuenter Roeck <linux@roeck-us.net>
Sun, 22 May 2022 18:32:32 +0000 (11:32 -0700)
Some lm90 compatible devices can operate in an extended temperature mode.
This feature is now enabled if the property is set in the corresponding
device tree node.

Signed-off-by: Holger Brunck <holger.brunck@hitachienergy.com>
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
Link: https://lore.kernel.org/r/20220517135614.8185-2-holger.brunck@hitachienergy.com
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
drivers/hwmon/lm90.c

index 1c9493c..3820f0e 100644 (file)
@@ -1707,6 +1707,7 @@ static void lm90_restore_conf(void *_data)
 
 static int lm90_init_client(struct i2c_client *client, struct lm90_data *data)
 {
+       struct device_node *np = client->dev.of_node;
        int config, convrate;
 
        convrate = lm90_read_reg(client, LM90_REG_R_CONVRATE);
@@ -1727,6 +1728,9 @@ static int lm90_init_client(struct i2c_client *client, struct lm90_data *data)
 
        /* Check Temperature Range Select */
        if (data->flags & LM90_HAVE_EXTENDED_TEMP) {
+               if (of_property_read_bool(np, "ti,extended-range-enable"))
+                       config |= 0x04;
+
                if (config & 0x04)
                        data->flags |= LM90_FLAG_ADT7461_EXT;
        }