aboutsummaryrefslogtreecommitdiff
path: root/core
diff options
context:
space:
mode:
authorShilpasri G Bhat <shilpa.bhat@linux.vnet.ibm.com>2017-07-28 00:45:33 +0530
committerStewart Smith <stewart@linux.vnet.ibm.com>2017-07-28 14:53:19 +1000
commit5c2510d171cb0a0a7e34e659f2b7a2483decf7de (patch)
treea61199a5f4828b37c8b65dea3324f7b2f82d6af3 /core
parentfa57f7ccff403e5035c5cec32f92ac4826438195 (diff)
downloadskiboot-5c2510d171cb0a0a7e34e659f2b7a2483decf7de.zip
skiboot-5c2510d171cb0a0a7e34e659f2b7a2483decf7de.tar.gz
skiboot-5c2510d171cb0a0a7e34e659f2b7a2483decf7de.tar.bz2
sensors: occ: Add support to clear sensor groups
Adds a generic API to clear sensor groups. OCC inband sensor groups such as CSM, Profiler and Job Scheduler can be cleared using this API. It will clear the min/max of all sensors belonging to OCC sensor groups. Signed-off-by: Shilpasri G Bhat <shilpa.bhat@linux.vnet.ibm.com> Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
Diffstat (limited to 'core')
-rw-r--r--core/sensor.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/core/sensor.c b/core/sensor.c
index b0d3c5e..57b21bc 100644
--- a/core/sensor.c
+++ b/core/sensor.c
@@ -41,6 +41,18 @@ static int64_t opal_sensor_read(uint32_t sensor_hndl, int token,
return OPAL_UNSUPPORTED;
}
+static int opal_sensor_group_clear(u32 group_hndl, int token)
+{
+ switch (sensor_get_family(group_hndl)) {
+ case SENSOR_OCC:
+ return occ_sensor_group_clear(group_hndl, token);
+ default:
+ break;
+ }
+
+ return OPAL_UNSUPPORTED;
+}
+
void sensor_init(void)
{
sensor_node = dt_new(opal_node, "sensors");
@@ -50,4 +62,5 @@ void sensor_init(void)
/* Register OPAL interface */
opal_register(OPAL_SENSOR_READ, opal_sensor_read, 3);
+ opal_register(OPAL_SENSOR_GROUP_CLEAR, opal_sensor_group_clear, 2);
}