|
@@ -290,10 +290,12 @@ static void thermal_zone_device_set_polling(struct thermal_zone_device *tz,
|
|
|
int delay)
|
|
|
{
|
|
|
if (delay > 1000)
|
|
|
- mod_delayed_work(system_freezable_wq, &tz->poll_queue,
|
|
|
+ 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_wq, &tz->poll_queue,
|
|
|
+ mod_delayed_work(system_freezable_power_efficient_wq,
|
|
|
+ &tz->poll_queue,
|
|
|
msecs_to_jiffies(delay));
|
|
|
else
|
|
|
cancel_delayed_work(&tz->poll_queue);
|
|
@@ -1102,8 +1104,9 @@ void thermal_cooling_device_unregister(struct thermal_cooling_device *cdev)
|
|
|
mutex_unlock(&thermal_list_lock);
|
|
|
|
|
|
ida_simple_remove(&thermal_cdev_ida, cdev->id);
|
|
|
- device_unregister(&cdev->device);
|
|
|
+ device_del(&cdev->device);
|
|
|
thermal_cooling_device_destroy_sysfs(cdev);
|
|
|
+ put_device(&cdev->device);
|
|
|
}
|
|
|
EXPORT_SYMBOL_GPL(thermal_cooling_device_unregister);
|
|
|
|