linux-stable/drivers/thermal
Javi Merino 6b775e870c thermal: introduce the Power Allocator governor
The power allocator governor is a thermal governor that controls system
and device power allocation to control temperature.  Conceptually, the
implementation divides the sustainable power of a thermal zone among
all the heat sources in that zone.

This governor relies on "power actors", entities that represent heat
sources.  They can report current and maximum power consumption and
can set a given maximum power consumption, usually via a cooling
device.

The governor uses a Proportional Integral Derivative (PID) controller
driven by the temperature of the thermal zone.  The output of the
controller is a power budget that is then allocated to each power
actor that can have bearing on the temperature we are trying to
control.  It decides how much power to give each cooling device based
on the performance they are requesting.  The PID controller ensures
that the total power budget does not exceed the control temperature.

Cc: Zhang Rui <rui.zhang@intel.com>
Cc: Eduardo Valentin <edubezval@gmail.com>
Signed-off-by: Punit Agrawal <punit.agrawal@arm.com>
Signed-off-by: Javi Merino <javi.merino@arm.com>
Signed-off-by: Eduardo Valentin <edubezval@gmail.com>
2015-05-04 21:27:52 -07:00
..
int340x_thermal Thermal/int340x: Fix memleak for aux trip 2015-03-05 01:41:51 -04:00
samsung thermal: exynos: Fix wrong control of power down detection mode for Exynos7 2015-03-02 10:04:51 +01:00
st drivers: thermal: st: remove several sparse warnings 2015-04-07 13:43:28 -07:00
ti-soc-thermal thermal: of: fix cooling device weights in device tree 2015-05-04 21:27:50 -07:00
armada_thermal.c Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux 2014-12-17 10:16:27 -08:00
clock_cooling.c thermal: introduce clock cooling device 2014-11-20 10:43:16 -04:00
cpu_cooling.c thermal: cpu_cooling: implement the power cooling device API 2015-05-04 21:27:52 -07:00
db8500_cpufreq_cooling.c Merge branch 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/evalenti/linux-soc-thermal into thermal-soc 2014-12-21 22:49:12 +08:00
db8500_thermal.c thermal: of: fix cooling device weights in device tree 2015-05-04 21:27:50 -07:00
dove_thermal.c thermal: drop owner assignment from platform_drivers 2014-10-20 16:21:42 +02:00
fair_share.c thermal: fair_share: generalize the weight concept 2015-05-04 21:27:51 -07:00
gov_bang_bang.c thermal: Added Bang-bang thermal governor 2014-08-27 15:45:58 +08:00
imx_thermal.c thermal: of: fix cooling device weights in device tree 2015-05-04 21:27:50 -07:00
intel_powerclamp.c thermal/intel_powerclamp: add id for Avoton SoC 2015-02-28 13:55:40 +08:00
intel_soc_dts_thermal.c thermal: Intel SoC DTS: Add Braswell support 2015-01-29 11:28:01 +08:00
Kconfig thermal: introduce the Power Allocator governor 2015-05-04 21:27:52 -07:00
kirkwood_thermal.c thermal: drop owner assignment from platform_drivers 2014-10-20 16:21:42 +02:00
Makefile thermal: introduce the Power Allocator governor 2015-05-04 21:27:52 -07:00
of-thermal.c thermal: of: fix cooling device weights in device tree 2015-05-04 21:27:50 -07:00
power_allocator.c thermal: introduce the Power Allocator governor 2015-05-04 21:27:52 -07:00
qcom-spmi-temp-alarm.c thermal: Add QPNP PMIC temperature alarm driver 2015-05-04 21:27:51 -07:00
rcar_thermal.c thermal: rcar: Make error and remove paths symmetrical with init 2015-02-24 14:58:05 -04:00
rockchip_thermal.c thermal: rockchip: make temperature reporting much more accurate 2015-01-24 23:38:36 -04:00
spear_thermal.c thermal: drop owner assignment from platform_drivers 2014-10-20 16:21:42 +02:00
step_wise.c thermal: step_wise: spelling fixes 2015-02-06 16:35:00 +08:00
tegra_soctherm.c thermal: of: improve of-thermal sensor registration API 2014-11-20 10:44:54 -04:00
thermal_core.c thermal: introduce the Power Allocator governor 2015-05-04 21:27:52 -07:00
thermal_core.h thermal: introduce the Power Allocator governor 2015-05-04 21:27:52 -07:00
thermal_hwmon.c thermal: hwmon: Make the check for critical temp valid consistent 2014-06-30 10:17:27 +08:00
thermal_hwmon.h thermal: hwmon: move hwmon support to single file 2013-09-03 09:09:12 -04:00
user_space.c Thermal: build thermal governors into thermal_sys module 2013-04-14 23:28:43 +08:00
x86_pkg_temp_thermal.c thermal, x86-pkg-temp: Fix CPU hotplug callback registration 2014-03-20 13:43:47 +01:00