diff options
author | Vaidyanathan Srinivasan <svaidy@linux.vnet.ibm.com> | 2014-01-21 09:52:37 +1100 |
---|---|---|
committer | Eli Qiao <taget@linux.vnet.ibm.com> | 2014-01-22 10:26:24 +0800 |
commit | 0f726b2f1870b2dfaac40aceb3de7a1f9159dfd5 (patch) | |
tree | 84a74e948b75b7d986f95a43181592760f4863df | |
parent | fbd8173314a3ce24d3b9670c5a1aea342b144c04 (diff) | |
download | powerkvm-0f726b2f1870b2dfaac40aceb3de7a1f9159dfd5.tar.gz |
powerpc/powernv: Add power sensor data retrieval from FSP
Platform will provide power data in watts, hwmon expects in
micro-watts.
Signed-off-by: Vaidyanathan Srinivasan <svaidy@linux.vnet.ibm.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
-rw-r--r-- | drivers/hwmon/ibmpowernv.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/hwmon/ibmpowernv.c b/drivers/hwmon/ibmpowernv.c index 020952083d145..6a08c4717f6a5 100644 --- a/drivers/hwmon/ibmpowernv.c +++ b/drivers/hwmon/ibmpowernv.c @@ -53,6 +53,7 @@ enum sensors { UNKNOWN = -1, FAN, TEMPERATURE, + POWERSUPPLY, POWER, MAX_SENSOR_TYPES }; @@ -61,6 +62,7 @@ static const char * const sensor_name_table[] = { "fan-sensor", "amb-temp-sensor", "power-sensor", + "power", NULL }; @@ -68,6 +70,7 @@ static const char * const dt_sensor_comp_types[] = { "ibm,opal-sensor-cooling-fan", "ibm,opal-sensor-amb-temp", "ibm,opal-sensor-power-supply", + "ibm,opal-sensor-power", NULL }; @@ -195,6 +198,9 @@ static ssize_t show_sensor(struct device *dev, * milli-degrees. */ x = x*1000; + } else if (sensor_type == POWER && x > 0) { + /* Power value comes in watts, convert to micro-watts */ + x = x * 1000000; } return sprintf(buf, "%d\n", x); @@ -276,6 +282,8 @@ static int create_sensor_attr(struct sensor_specific_data *tdata, strcpy(temp_file_prefix, "fan"); else if (sensor_type == TEMPERATURE) strcpy(temp_file_prefix, "temp"); + else if (sensor_type == POWERSUPPLY) + strcpy(temp_file_prefix, "powersupply"); else if (sensor_type == POWER) strcpy(temp_file_prefix, "power"); |