diff options
author | Eduardo Valentin <eduardo.valentin@ti.com> | 2013-07-16 15:26:28 -0400 |
---|---|---|
committer | Eduardo Valentin <eduardo.valentin@ti.com> | 2013-09-03 09:10:24 -0400 |
commit | a8892d83894bcbd2717846cfa85955152b73453f (patch) | |
tree | ae71fac048786708759736daba4ca56dc3b0f73b /include/linux/thermal.h | |
parent | ccba4ffd9eff6120a20cc7656458ac554aec4b0c (diff) |
thermal: thermal_core: allow binding with limits on bind_params
When registering a thermal zone device using platform information
via bind_params, the thermal framework will always perform the
cdev binding using the lowest and highest limits (THERMAL_NO_LIMIT).
This patch changes the data structures so that it is possible
to inform what are the desired limits for each trip point
inside a bind_param. The way the binding is performed is also
changed so that it uses the new data structure.
Cc: Zhang Rui <rui.zhang@intel.com>
Cc: linux-pm@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Eduardo Valentin <eduardo.valentin@ti.com>
Diffstat (limited to 'include/linux/thermal.h')
-rw-r--r-- | include/linux/thermal.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/include/linux/thermal.h b/include/linux/thermal.h index b4a975f25be0..b268d3cf7ae3 100644 --- a/include/linux/thermal.h +++ b/include/linux/thermal.h | |||
@@ -207,6 +207,16 @@ struct thermal_bind_params { | |||
207 | * See Documentation/thermal/sysfs-api.txt for more information. | 207 | * See Documentation/thermal/sysfs-api.txt for more information. |
208 | */ | 208 | */ |
209 | int trip_mask; | 209 | int trip_mask; |
210 | |||
211 | /* | ||
212 | * This is an array of cooling state limits. Must have exactly | ||
213 | * 2 * thermal_zone.number_of_trip_points. It is an array consisting | ||
214 | * of tuples <lower-state upper-state> of state limits. Each trip | ||
215 | * will be associated with one state limit tuple when binding. | ||
216 | * A NULL pointer means <THERMAL_NO_LIMITS THERMAL_NO_LIMITS> | ||
217 | * on all trips. | ||
218 | */ | ||
219 | unsigned long *binding_limits; | ||
210 | int (*match) (struct thermal_zone_device *tz, | 220 | int (*match) (struct thermal_zone_device *tz, |
211 | struct thermal_cooling_device *cdev); | 221 | struct thermal_cooling_device *cdev); |
212 | }; | 222 | }; |