The firmware has supported for reading sensor values of size u32.
This patch adds support to use newer firmware functions which allows
to read the sensors of size u64.

Signed-off-by: Shilpasri G Bhat <shilpa.b...@linux.vnet.ibm.com>
---
 drivers/hwmon/ibmpowernv.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/drivers/hwmon/ibmpowernv.c b/drivers/hwmon/ibmpowernv.c
index 5ccdd0b..74d9b5a 100644
--- a/drivers/hwmon/ibmpowernv.c
+++ b/drivers/hwmon/ibmpowernv.c
@@ -101,9 +101,10 @@ static ssize_t show_sensor(struct device *dev, struct 
device_attribute *devattr,
        struct sensor_data *sdata = container_of(devattr, struct sensor_data,
                                                 dev_attr);
        ssize_t ret;
-       u32 x;
+       u64 x;
+
+       ret =  opal_get_sensor_data_u64(sdata->id, &x);
 
-       ret = opal_get_sensor_data(sdata->id, &x);
        if (ret)
                return ret;
 
@@ -114,7 +115,7 @@ static ssize_t show_sensor(struct device *dev, struct 
device_attribute *devattr,
        else if (sdata->type == POWER_INPUT)
                x *= 1000000;
 
-       return sprintf(buf, "%u\n", x);
+       return sprintf(buf, "%llu\n", x);
 }
 
 static ssize_t show_label(struct device *dev, struct device_attribute *devattr,
-- 
1.8.3.1

Reply via email to