aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/thermal.h
diff options
context:
space:
mode:
authorMatthew Garrett <mjg59@srcf.ucam.org>2008-12-03 13:00:38 -0500
committerLen Brown <len.brown@intel.com>2009-03-27 16:58:22 -0400
commit03a971a2899886006f19f3495973bbd646d8bdae (patch)
tree6b82e8d67ca5eaf94fce4bd419276d90ac281c8e /include/linux/thermal.h
parentf6f5c45e06e86d94621cd5c1c4508bdee1952fc8 (diff)
thermal: support forcing support for passive cooling
Due to poor thermal design or Linux driving hardware outside its thermal envelope, some systems will reach critical temperature and shut down under high load. This patch adds support for forcing a polling-based passive trip point if the firmware doesn't provide one. The assumption is made that the processor is the most practical means to reduce the dynamic heat generation, so hitting the passive thermal limit will cause the CPU to be throttled until the temperature stabalises around the defined value. UI is provided via a "passive" sysfs entry in the thermal zone directory. It accepts a decimal value in millidegrees celsius, or "0" to disable the functionality. Default behaviour is for this functionality to be disabled. Signed-off-by: Matthew Garrett <mjg@redhat.com> Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'include/linux/thermal.h')
-rw-r--r--include/linux/thermal.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/thermal.h b/include/linux/thermal.h
index a81c61521ba4..1de8b9eb841b 100644
--- a/include/linux/thermal.h
+++ b/include/linux/thermal.h
@@ -113,6 +113,7 @@ struct thermal_zone_device {
113 int polling_delay; 113 int polling_delay;
114 int last_temperature; 114 int last_temperature;
115 bool passive; 115 bool passive;
116 unsigned int forced_passive;
116 struct thermal_zone_device_ops *ops; 117 struct thermal_zone_device_ops *ops;
117 struct list_head cooling_devices; 118 struct list_head cooling_devices;
118 struct idr idr; 119 struct idr idr;