mirror of
https://github.com/rd-stuffs/msm-4.14.git
synced 2025-02-20 11:45:48 +08:00
drivers: thermal: of-thermal: Add support for getting trip temperature
Add support for the sensor drivers using of-thermal interface to support reading the trip temperature from the hardware using a callback. This can be used in case, when the hardware works on a pre-configured threshold different from the threshold set by software. Change-Id: Ic5aaf1586b8dcbb3da0dd775718407c257b2064f Signed-off-by: Ram Chandrasekar <rkumbako@codeaurora.org>
This commit is contained in:
parent
7b5363ccd4
commit
eb67e3af2c
@ -430,7 +430,16 @@ static int of_thermal_get_trip_temp(struct thermal_zone_device *tz, int trip,
|
||||
if (trip >= data->ntrips || trip < 0)
|
||||
return -EDOM;
|
||||
|
||||
*temp = data->trips[trip].temperature;
|
||||
if (data->senps && data->senps->ops->get_trip_temp) {
|
||||
int ret;
|
||||
|
||||
ret = data->senps->ops->get_trip_temp(data->senps->sensor_data,
|
||||
trip, temp);
|
||||
if (ret)
|
||||
return ret;
|
||||
} else {
|
||||
*temp = data->trips[trip].temperature;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
@ -389,6 +389,8 @@ struct thermal_genl_event {
|
||||
* temperature.
|
||||
* @set_trip_temp: a pointer to a function that sets the trip temperature on
|
||||
* hardware.
|
||||
* @get_trip_temp: a pointer to a function that gets the trip temperature on
|
||||
* hardware.
|
||||
*/
|
||||
struct thermal_zone_of_device_ops {
|
||||
int (*get_temp)(void *, int *);
|
||||
@ -396,6 +398,7 @@ struct thermal_zone_of_device_ops {
|
||||
int (*set_trips)(void *, int, int);
|
||||
int (*set_emul_temp)(void *, int);
|
||||
int (*set_trip_temp)(void *, int, int);
|
||||
int (*get_trip_temp)(void *, int, int *);
|
||||
};
|
||||
|
||||
/**
|
||||
|
Loading…
x
Reference in New Issue
Block a user