]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
thermal: core: Relocate thermal zone initialization routine
authorRafael J. Wysocki <rafael.j.wysocki@intel.com>
Wed, 16 Oct 2024 11:36:03 +0000 (13:36 +0200)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Thu, 24 Oct 2024 15:15:07 +0000 (17:15 +0200)
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
drivers/thermal/thermal_core.c

index 7ce4140dc2d3b074f48ee0ecf7371e9247fe595d..19a3894ad752a91ef621794abbeec9abfb2323ec 100644 (file)
@@ -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;