summaryrefslogtreecommitdiff
path: root/drivers/thermal/Kconfig
diff options
context:
space:
mode:
authorThierry Reding <treding@nvidia.com>2023-06-09 15:44:08 +0300
committerDaniel Lezcano <daniel.lezcano@linaro.org>2023-06-26 13:03:13 +0300
commit04bf1fe478d81868308bc91b4a1bce50d693f203 (patch)
treebf3d7f08e629c4def7246374cb5a8ab3ee8d29ea /drivers/thermal/Kconfig
parent598e1afca47fdbb302ce8d288b06bcc8728efc6c (diff)
downloadlinux-04bf1fe478d81868308bc91b4a1bce50d693f203.tar.xz
thermal: Allow selecting the bang-bang governor as default
For many setups the bang-bang governor is exactly what we want. Many ARM SoC-based devices use fans to cool down the entire SoC and that works well only with the bang-bang governor because it uses the hysteresis in order to let the fan run for a while to cool the SoC down below the trip point before switching it off again. The step-wise governor will behave strangely in these situations. It doesn't use the hysteresis, so it can lead to situations where the fan is turned on for only a very brief period and then is switched back off, only to get switched back on again very quickly because the SoC hasn't cooled down very much. Signed-off-by: Thierry Reding <treding@nvidia.com> Link: https://lore.kernel.org/r/20230609124408.3788680-1-thierry.reding@gmail.com Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Diffstat (limited to 'drivers/thermal/Kconfig')
-rw-r--r--drivers/thermal/Kconfig8
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/thermal/Kconfig b/drivers/thermal/Kconfig
index 4cd7ab707315..19a4b33cb564 100644
--- a/drivers/thermal/Kconfig
+++ b/drivers/thermal/Kconfig
@@ -130,6 +130,14 @@ config THERMAL_DEFAULT_GOV_POWER_ALLOCATOR
system and device power allocation. This governor can only
operate on cooling devices that implement the power API.
+config THERMAL_DEFAULT_GOV_BANG_BANG
+ bool "bang_bang"
+ depends on THERMAL_GOV_BANG_BANG
+ help
+ Use the bang_bang governor as default. This throttles the
+ devices one step at the time, taking into account the trip
+ point hysteresis.
+
endchoice
config THERMAL_GOV_FAIR_SHARE