]> git.proxmox.com Git - mirror_ubuntu-jammy-kernel.git/commitdiff
hwmon: (adm1275) Enable adm1278 ADM1278_TEMP1_EN
authorManikandan Elumalai <manikandan.hcl.ers.epl@gmail.com>
Mon, 22 Jun 2020 15:37:27 +0000 (21:07 +0530)
committerGuenter Roeck <linux@roeck-us.net>
Sun, 19 Jul 2020 23:25:21 +0000 (16:25 -0700)
The adm1278 temp attribute need it for openbmc platform .
This feature not enabled by default, so PMON_CONFIG needs to enable it.

Signed-off-by: Manikandan Elumalai <manikandan.hcl.ers.epl@gmail.com>
Link: https://lore.kernel.org/r/20200622153727.GA9347@cnn
[groeck: Split long line]
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
drivers/hwmon/pmbus/adm1275.c

index 19317575d1c6a781e994ce05cb19c4f8099b4119..651846650a9c94aafd8029bc32ead31f0154b8c3 100644 (file)
@@ -683,11 +683,13 @@ static int adm1275_probe(struct i2c_client *client,
                tindex = 3;
 
                info->func[0] |= PMBUS_HAVE_PIN | PMBUS_HAVE_STATUS_INPUT |
-                       PMBUS_HAVE_VOUT | PMBUS_HAVE_STATUS_VOUT;
+                       PMBUS_HAVE_VOUT | PMBUS_HAVE_STATUS_VOUT |
+                       PMBUS_HAVE_TEMP | PMBUS_HAVE_STATUS_TEMP;
 
-               /* Enable VOUT if not enabled (it is disabled by default) */
-               if (!(config & ADM1278_VOUT_EN)) {
-                       config |= ADM1278_VOUT_EN;
+               /* Enable VOUT & TEMP1 if not enabled (disabled by default) */
+               if ((config & (ADM1278_VOUT_EN | ADM1278_TEMP1_EN)) !=
+                   (ADM1278_VOUT_EN | ADM1278_TEMP1_EN)) {
+                       config |= ADM1278_VOUT_EN | ADM1278_TEMP1_EN;
                        ret = i2c_smbus_write_byte_data(client,
                                                        ADM1275_PMON_CONFIG,
                                                        config);
@@ -698,9 +700,6 @@ static int adm1275_probe(struct i2c_client *client,
                        }
                }
 
-               if (config & ADM1278_TEMP1_EN)
-                       info->func[0] |=
-                               PMBUS_HAVE_TEMP | PMBUS_HAVE_STATUS_TEMP;
                if (config & ADM1278_VIN_EN)
                        info->func[0] |= PMBUS_HAVE_VIN;
                break;