diff options
author | Christine Gharzuzi <cgharzuzi@habana.ai> | 2020-01-28 15:19:38 +0200 |
---|---|---|
committer | Oded Gabbay <oded.gabbay@gmail.com> | 2020-03-24 10:54:16 +0200 |
commit | 0da10e683eb4644b104e8b552a1d2c946af3145b (patch) | |
tree | d935a9fffa241016c3afff2238272e5b7811b094 | |
parent | d57b83c3dfe55747f1a43f9d9fbadeff7b5a3cd5 (diff) |
habanalabs: provide historical maximum of various sensors
Add support for hwmon_in_highest, hwmon_temp_highest and hwmon_curr_highest
attributes. These attributes retrieve the historical maximum voltage,
temperature and current that were sampled, respectively.
Signed-off-by: Christine Gharzuzi <cgharzuzi@habana.ai>
Reviewed-by: Oded Gabbay <oded.gabbay@gmail.com>
Signed-off-by: Oded Gabbay <oded.gabbay@gmail.com>
-rw-r--r-- | drivers/misc/habanalabs/hwmon.c | 6 | ||||
-rw-r--r-- | drivers/misc/habanalabs/include/armcp_if.h | 9 |
2 files changed, 12 insertions, 3 deletions
diff --git a/drivers/misc/habanalabs/hwmon.c b/drivers/misc/habanalabs/hwmon.c index 3539190b1caa..a21a26e07c3b 100644 --- a/drivers/misc/habanalabs/hwmon.c +++ b/drivers/misc/habanalabs/hwmon.c @@ -127,6 +127,7 @@ static int hl_read(struct device *dev, enum hwmon_sensor_types type, case hwmon_temp_max_hyst: case hwmon_temp_crit_hyst: case hwmon_temp_offset: + case hwmon_temp_highest: break; default: return -EINVAL; @@ -139,6 +140,7 @@ static int hl_read(struct device *dev, enum hwmon_sensor_types type, case hwmon_in_input: case hwmon_in_min: case hwmon_in_max: + case hwmon_in_highest: break; default: return -EINVAL; @@ -151,6 +153,7 @@ static int hl_read(struct device *dev, enum hwmon_sensor_types type, case hwmon_curr_input: case hwmon_curr_min: case hwmon_curr_max: + case hwmon_curr_highest: break; default: return -EINVAL; @@ -230,6 +233,7 @@ static umode_t hl_is_visible(const void *data, enum hwmon_sensor_types type, case hwmon_temp_max_hyst: case hwmon_temp_crit: case hwmon_temp_crit_hyst: + case hwmon_temp_highest: return 0444; case hwmon_temp_offset: return 0644; @@ -240,6 +244,7 @@ static umode_t hl_is_visible(const void *data, enum hwmon_sensor_types type, case hwmon_in_input: case hwmon_in_min: case hwmon_in_max: + case hwmon_in_highest: return 0444; } break; @@ -248,6 +253,7 @@ static umode_t hl_is_visible(const void *data, enum hwmon_sensor_types type, case hwmon_curr_input: case hwmon_curr_min: case hwmon_curr_max: + case hwmon_curr_highest: return 0444; } break; diff --git a/drivers/misc/habanalabs/include/armcp_if.h b/drivers/misc/habanalabs/include/armcp_if.h index 014549eaf919..bdd0a4c3a9cf 100644 --- a/drivers/misc/habanalabs/include/armcp_if.h +++ b/drivers/misc/habanalabs/include/armcp_if.h @@ -287,19 +287,22 @@ enum armcp_temp_type { armcp_temp_max_hyst, armcp_temp_crit, armcp_temp_crit_hyst, - armcp_temp_offset = 19 + armcp_temp_offset = 19, + armcp_temp_highest = 22 }; enum armcp_in_attributes { armcp_in_input, armcp_in_min, - armcp_in_max + armcp_in_max, + armcp_in_highest = 7 }; enum armcp_curr_attributes { armcp_curr_input, armcp_curr_min, - armcp_curr_max + armcp_curr_max, + armcp_curr_highest = 7 }; enum armcp_fan_attributes { |