summaryrefslogtreecommitdiff
path: root/drivers/thermal/gov_step_wise.c
diff options
context:
space:
mode:
authorRafael J. Wysocki <rafael.j.wysocki@intel.com>2024-04-10 19:44:14 +0300
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2024-04-24 11:14:58 +0300
commitfe036266504796c84adee28b64c347d3acf4206e (patch)
tree77805fe1765b540993b8bc3f3f1c7bf4121de7c6 /drivers/thermal/gov_step_wise.c
parente4065f144fa60df56a8596bdc364a5b4fe8cbf40 (diff)
downloadlinux-fe036266504796c84adee28b64c347d3acf4206e.tar.xz
thermal: gov_step_wise: Clean up thermal_zone_trip_update()
Do some assorted cleanups in thermal_zone_trip_update(): * Compute the trend value upfront. * Move old_target definition to the block where it is used. * Adjust white space around diagnostic messages and locking. * Use suitable field formatting in a message to avoid an explicit cast to int. Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com> Reviewed-by: Lukasz Luba <lukasz.luba@arm.com>
Diffstat (limited to 'drivers/thermal/gov_step_wise.c')
-rw-r--r--drivers/thermal/gov_step_wise.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/drivers/thermal/gov_step_wise.c b/drivers/thermal/gov_step_wise.c
index 30a32ad8c473..0196a1a02290 100644
--- a/drivers/thermal/gov_step_wise.c
+++ b/drivers/thermal/gov_step_wise.c
@@ -65,13 +65,10 @@ static void thermal_zone_trip_update(struct thermal_zone_device *tz,
const struct thermal_trip *trip,
int trip_threshold)
{
+ enum thermal_trend trend = get_tz_trend(tz, trip);
int trip_id = thermal_zone_trip_id(tz, trip);
- enum thermal_trend trend;
struct thermal_instance *instance;
bool throttle = false;
- int old_target;
-
- trend = get_tz_trend(tz, trip);
if (tz->temperature >= trip_threshold) {
throttle = true;
@@ -82,13 +79,16 @@ static void thermal_zone_trip_update(struct thermal_zone_device *tz,
trip_id, trip->type, trip_threshold, trend, throttle);
list_for_each_entry(instance, &tz->thermal_instances, tz_node) {
+ int old_target;
+
if (instance->trip != trip)
continue;
old_target = instance->target;
instance->target = get_target_state(instance, trend, throttle);
- dev_dbg(&instance->cdev->device, "old_target=%d, target=%d\n",
- old_target, (int)instance->target);
+
+ dev_dbg(&instance->cdev->device, "old_target=%d, target=%ld\n",
+ old_target, instance->target);
if (instance->initialized && old_target == instance->target)
continue;
@@ -104,6 +104,7 @@ static void thermal_zone_trip_update(struct thermal_zone_device *tz,
}
instance->initialized = true;
+
mutex_lock(&instance->cdev->lock);
instance->cdev->updated = false; /* cdev needs update */
mutex_unlock(&instance->cdev->lock);