summaryrefslogtreecommitdiff
path: root/drivers/thermal/imx_thermal.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/thermal/imx_thermal.c')
-rw-r--r--drivers/thermal/imx_thermal.c19
1 files changed, 7 insertions, 12 deletions
diff --git a/drivers/thermal/imx_thermal.c b/drivers/thermal/imx_thermal.c
index dbc1649f7bf3..a94ec0a0c9dd 100644
--- a/drivers/thermal/imx_thermal.c
+++ b/drivers/thermal/imx_thermal.c
@@ -330,33 +330,29 @@ static int imx_change_mode(struct thermal_zone_device *tz,
return 0;
}
-static int imx_get_crit_temp(struct thermal_zone_device *tz, int *temp)
-{
- *temp = trips[IMX_TRIP_CRITICAL].temperature;
-
- return 0;
-}
-
-static int imx_set_trip_temp(struct thermal_zone_device *tz, int trip,
+static int imx_set_trip_temp(struct thermal_zone_device *tz, int trip_id,
int temp)
{
struct imx_thermal_data *data = thermal_zone_device_priv(tz);
+ struct thermal_trip trip;
int ret;
ret = pm_runtime_resume_and_get(data->dev);
if (ret < 0)
return ret;
+ ret = __thermal_zone_get_trip(tz, trip_id, &trip);
+ if (ret)
+ return ret;
+
/* do not allow changing critical threshold */
- if (trip == IMX_TRIP_CRITICAL)
+ if (trip.type == THERMAL_TRIP_CRITICAL)
return -EPERM;
/* do not allow passive to be set higher than critical */
if (temp < 0 || temp > trips[IMX_TRIP_CRITICAL].temperature)
return -EINVAL;
- trips[IMX_TRIP_PASSIVE].temperature = temp;
-
imx_set_alarm_temp(data, temp);
pm_runtime_put(data->dev);
@@ -384,7 +380,6 @@ static struct thermal_zone_device_ops imx_tz_ops = {
.unbind = imx_unbind,
.get_temp = imx_get_temp,
.change_mode = imx_change_mode,
- .get_crit_temp = imx_get_crit_temp,
.set_trip_temp = imx_set_trip_temp,
};