summaryrefslogtreecommitdiff
path: root/include/linux/scmi_protocol.h
diff options
context:
space:
mode:
authorCristian Marussi <cristian.marussi@arm.com>2020-07-01 16:53:46 +0100
committerSudeep Holla <sudeep.holla@arm.com>2020-07-01 17:07:26 +0100
commit128e3e9311a95bab6b267b7a93eb9ebe2347dbda (patch)
tree8e4dfadac304c5f66c66eccbd5f4f4f32d6da0e5 /include/linux/scmi_protocol.h
parentfb5086dc4746184a9325fc25411226a750fb252c (diff)
firmware: arm_scmi: Add sensor notifications support
Make SCMI sensor protocol register with the notification core. Link: https://lore.kernel.org/r/20200701155348.52864-8-cristian.marussi@arm.com Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> Signed-off-by: Cristian Marussi <cristian.marussi@arm.com> Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
Diffstat (limited to 'include/linux/scmi_protocol.h')
-rw-r--r--include/linux/scmi_protocol.h13
1 files changed, 8 insertions, 5 deletions
diff --git a/include/linux/scmi_protocol.h b/include/linux/scmi_protocol.h
index 65ad83ddde70..d0ea4a5037e7 100644
--- a/include/linux/scmi_protocol.h
+++ b/include/linux/scmi_protocol.h
@@ -176,18 +176,13 @@ enum scmi_sensor_class {
*
* @count_get: get the count of sensors provided by SCMI
* @info_get: get the information of the specified sensor
- * @trip_point_notify: control notifications on cross-over events for
- * the trip-points
* @trip_point_config: selects and configures a trip-point of interest
* @reading_get: gets the current value of the sensor
*/
struct scmi_sensor_ops {
int (*count_get)(const struct scmi_handle *handle);
-
const struct scmi_sensor_info *(*info_get)
(const struct scmi_handle *handle, u32 sensor_id);
- int (*trip_point_notify)(const struct scmi_handle *handle,
- u32 sensor_id, bool enable);
int (*trip_point_config)(const struct scmi_handle *handle,
u32 sensor_id, u8 trip_id, u64 trip_value);
int (*reading_get)(const struct scmi_handle *handle, u32 sensor_id,
@@ -380,6 +375,7 @@ enum scmi_notification_events {
SCMI_EVENT_POWER_STATE_CHANGED = 0x0,
SCMI_EVENT_PERFORMANCE_LIMITS_CHANGED = 0x0,
SCMI_EVENT_PERFORMANCE_LEVEL_CHANGED = 0x1,
+ SCMI_EVENT_SENSOR_TRIP_POINT_EVENT = 0x0,
};
struct scmi_power_state_changed_report {
@@ -404,4 +400,11 @@ struct scmi_perf_level_report {
u32 performance_level;
};
+struct scmi_sensor_trip_point_report {
+ u64 timestamp;
+ u32 agent_id;
+ u32 sensor_id;
+ u32 trip_point_desc;
+};
+
#endif /* _LINUX_SCMI_PROTOCOL_H */