thermal/core: Use precomputed jiffies for the polling
authorDaniel Lezcano <daniel.lezcano@linaro.org>
Wed, 16 Dec 2020 22:03:36 +0000 (23:03 +0100)
committerDaniel Lezcano <daniel.lezcano@linaro.org>
Tue, 19 Jan 2021 21:23:43 +0000 (22:23 +0100)
The delays are also stored in jiffies based unit. Use them instead of
the ms.

Cc: Thara Gopinath <thara.gopinath@linaro.org>
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Reviewed-by: Lukasz Luba <lukasz.luba@arm.com>
Reviewed-by: Thara Gopinath <thara.gopinath@linaro.org>
Link: https://lore.kernel.org/r/20201216220337.839878-2-daniel.lezcano@linaro.org
drivers/thermal/thermal_core.c

index 2c41d4a..d96c515 100644 (file)
@@ -289,16 +289,11 @@ static int __init thermal_register_governors(void)
  * - Critical trip point will cause a system shutdown.
  */
 static void thermal_zone_device_set_polling(struct thermal_zone_device *tz,
-                                           int delay)
+                                           unsigned long delay)
 {
-       if (delay > 1000)
+       if (delay)
                mod_delayed_work(system_freezable_power_efficient_wq,
-                                &tz->poll_queue,
-                                round_jiffies(msecs_to_jiffies(delay)));
-       else if (delay)
-               mod_delayed_work(system_freezable_power_efficient_wq,
-                                &tz->poll_queue,
-                                msecs_to_jiffies(delay));
+                                &tz->poll_queue, delay);
        else
                cancel_delayed_work(&tz->poll_queue);
 }
@@ -317,9 +312,9 @@ static void monitor_thermal_zone(struct thermal_zone_device *tz)
        mutex_lock(&tz->lock);
 
        if (!stop && tz->passive)
-               thermal_zone_device_set_polling(tz, tz->passive_delay);
+               thermal_zone_device_set_polling(tz, tz->passive_delay_jiffies);
        else if (!stop && tz->polling_delay)
-               thermal_zone_device_set_polling(tz, tz->polling_delay);
+               thermal_zone_device_set_polling(tz, tz->polling_delay_jiffies);
        else
                thermal_zone_device_set_polling(tz, 0);