summaryrefslogtreecommitdiff
path: root/drivers/thermal/thermal_core.h
diff options
context:
space:
mode:
authorLukasz Luba <lukasz.luba@arm.com>2023-12-21 02:17:45 +0300
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2023-12-29 20:01:00 +0300
commita8c959402d4dd6823918b33828d79900ae58c700 (patch)
tree3dff402f5da641674c96d3f1ea629402b0fbe701 /drivers/thermal/thermal_core.h
parent04c3b03044034ce50886f2c0d1c595ff25f45085 (diff)
downloadlinux-a8c959402d4dd6823918b33828d79900ae58c700.tar.xz
thermal: core: Add governor callback for thermal zone change
Add a new callback to the struct thermal_governor. It can be used for updating governors when there is a change in the thermal zone internals, e.g. thermal cooling device is bind to the thermal zone. That makes possible to move some heavy operations like memory allocations related to the number of cooling instances out of the throttle() callback. Both callback code paths (throttle() and update_tz()) are protected with the same thermal zone lock, which guaranties the consistency. Signed-off-by: Lukasz Luba <lukasz.luba@arm.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'drivers/thermal/thermal_core.h')
-rw-r--r--drivers/thermal/thermal_core.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/thermal/thermal_core.h b/drivers/thermal/thermal_core.h
index fe2917a74054..479c3b6917e4 100644
--- a/drivers/thermal/thermal_core.h
+++ b/drivers/thermal/thermal_core.h
@@ -114,6 +114,8 @@ int thermal_zone_device_set_policy(struct thermal_zone_device *, char *);
int thermal_build_list_of_policies(char *buf);
void __thermal_zone_device_update(struct thermal_zone_device *tz,
enum thermal_notify_event event);
+void thermal_governor_update_tz(struct thermal_zone_device *tz,
+ enum thermal_notify_event reason);
/* Helpers */
#define for_each_trip(__tz, __trip) \