diff options
author | Rafael J. Wysocki <rafael.j.wysocki@intel.com> | 2024-10-16 13:36:03 +0200 |
---|---|---|
committer | Rafael J. Wysocki <rafael.j.wysocki@intel.com> | 2024-10-24 17:15:07 +0200 |
commit | 43bac1026fdc0251e03e387fc347f84363e3780f (patch) | |
tree | a98bc121399b4661ababc85974b9dc0f55d2a267 /drivers/thermal | |
parent | 6d5537d40ce4b95c0de5d957fc0eb51fd9b6c06f (diff) | |
download | linux-43bac1026fdc0251e03e387fc347f84363e3780f.tar.gz linux-43bac1026fdc0251e03e387fc347f84363e3780f.tar.bz2 linux-43bac1026fdc0251e03e387fc347f84363e3780f.zip |
thermal: core: Relocate thermal zone initialization routine
Move thermal_zone_device_init() along with thermal_zone_device_check()
closer to the callers of the former, where they fit better together.
No functional impact.
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Reviewed-by: Lukasz Luba <lukasz.luba@arm.com>
Link: https://patch.msgid.link/1906685.CQOukoFCf9@rjwysocki.net
Diffstat (limited to 'drivers/thermal')
-rw-r--r-- | drivers/thermal/thermal_core.c | 82 |
1 files changed, 41 insertions, 41 deletions
diff --git a/drivers/thermal/thermal_core.c b/drivers/thermal/thermal_core.c index 7ce4140dc2d3..19a3894ad752 100644 --- a/drivers/thermal/thermal_core.c +++ b/drivers/thermal/thermal_core.c @@ -429,14 +429,6 @@ static void move_trip_to_sorted_list(struct thermal_trip_desc *td, list_add(&td->list_node, list); } -static void thermal_zone_device_check(struct work_struct *work) -{ - struct thermal_zone_device *tz = container_of(work, struct - thermal_zone_device, - poll_queue.work); - thermal_zone_device_update(tz, THERMAL_EVENT_UNSPECIFIED); -} - static void move_to_trips_high(struct thermal_zone_device *tz, struct thermal_trip_desc *td) { @@ -458,39 +450,6 @@ static void move_to_trips_invalid(struct thermal_zone_device *tz, list_move(&td->list_node, &tz->trips_invalid); } -static void thermal_zone_device_init(struct thermal_zone_device *tz) -{ - struct thermal_trip_desc *td, *next; - - INIT_DELAYED_WORK(&tz->poll_queue, thermal_zone_device_check); - - tz->temperature = THERMAL_TEMP_INIT; - tz->passive = 0; - tz->prev_low_trip = -INT_MAX; - tz->prev_high_trip = INT_MAX; - for_each_trip_desc(tz, td) { - struct thermal_instance *instance; - - list_for_each_entry(instance, &td->thermal_instances, trip_node) - instance->initialized = false; - } - /* - * At this point, all valid trips need to be moved to trips_high so that - * mitigation can be started if the zone temperature is above them. - */ - list_for_each_entry_safe(td, next, &tz->trips_invalid, list_node) { - if (td->trip.temperature != THERMAL_TEMP_INVALID) - move_to_trips_high(tz, td); - } - /* The trips_reached list may not be empty during system resume. */ - list_for_each_entry_safe(td, next, &tz->trips_reached, list_node) { - if (td->trip.temperature == THERMAL_TEMP_INVALID) - move_to_trips_invalid(tz, td); - else - move_to_trips_high(tz, td); - } -} - static void thermal_governor_trip_crossed(struct thermal_governor *governor, struct thermal_zone_device *tz, const struct thermal_trip *trip, @@ -1426,6 +1385,47 @@ int thermal_zone_get_crit_temp(struct thermal_zone_device *tz, int *temp) } EXPORT_SYMBOL_GPL(thermal_zone_get_crit_temp); +static void thermal_zone_device_check(struct work_struct *work) +{ + struct thermal_zone_device *tz = container_of(work, struct + thermal_zone_device, + poll_queue.work); + thermal_zone_device_update(tz, THERMAL_EVENT_UNSPECIFIED); +} + +static void thermal_zone_device_init(struct thermal_zone_device *tz) +{ + struct thermal_trip_desc *td, *next; + + INIT_DELAYED_WORK(&tz->poll_queue, thermal_zone_device_check); + + tz->temperature = THERMAL_TEMP_INIT; + tz->passive = 0; + tz->prev_low_trip = -INT_MAX; + tz->prev_high_trip = INT_MAX; + for_each_trip_desc(tz, td) { + struct thermal_instance *instance; + + list_for_each_entry(instance, &td->thermal_instances, trip_node) + instance->initialized = false; + } + /* + * At this point, all valid trips need to be moved to trips_high so that + * mitigation can be started if the zone temperature is above them. + */ + list_for_each_entry_safe(td, next, &tz->trips_invalid, list_node) { + if (td->trip.temperature != THERMAL_TEMP_INVALID) + move_to_trips_high(tz, td); + } + /* The trips_reached list may not be empty during system resume. */ + list_for_each_entry_safe(td, next, &tz->trips_reached, list_node) { + if (td->trip.temperature == THERMAL_TEMP_INVALID) + move_to_trips_invalid(tz, td); + else + move_to_trips_high(tz, td); + } +} + static int thermal_zone_init_governor(struct thermal_zone_device *tz) { struct thermal_governor *governor; |