xref: /linux/drivers/thermal/Kconfig (revision ca3de46b50809000b5ba708634e26ad979a4a63a)
1203d3d4aSZhang Rui#
2203d3d4aSZhang Rui# Generic thermal sysfs drivers configuration
3203d3d4aSZhang Rui#
4203d3d4aSZhang Rui
5203d3d4aSZhang Ruimenuconfig THERMAL
663c4ec90SZhang Rui	tristate "Generic Thermal sysfs driver"
7203d3d4aSZhang Rui	help
8203d3d4aSZhang Rui	  Generic Thermal Sysfs driver offers a generic mechanism for
9203d3d4aSZhang Rui	  thermal management. Usually it's made up of one or more thermal
10203d3d4aSZhang Rui	  zone and cooling device.
11543a9561SLen Brown	  Each thermal zone contains its own temperature, trip points,
12203d3d4aSZhang Rui	  cooling devices.
13203d3d4aSZhang Rui	  All platforms with ACPI thermal support can use this driver.
1463c4ec90SZhang Rui	  If you want this support, you should say Y or M here.
1516d75239SRene Herman
1672e19897SZhang Ruiif THERMAL
1772e19897SZhang Rui
1816d75239SRene Hermanconfig THERMAL_HWMON
19ab92402aSJean Delvare	bool
2016d75239SRene Herman	depends on HWMON=y || HWMON=THERMAL
21ab92402aSJean Delvare	default y
226a92c366SVincenzo Frascino
23a56757afSDurgadoss Rchoice
24a56757afSDurgadoss R	prompt "Default Thermal governor"
25a56757afSDurgadoss R	default THERMAL_DEFAULT_GOV_STEP_WISE
26a56757afSDurgadoss R	help
27a56757afSDurgadoss R	  This option sets which thermal governor shall be loaded at
28a56757afSDurgadoss R	  startup. If in doubt, select 'step_wise'.
29a56757afSDurgadoss R
30a56757afSDurgadoss Rconfig THERMAL_DEFAULT_GOV_STEP_WISE
31a56757afSDurgadoss R	bool "step_wise"
329d185d04SZhang Rui	select THERMAL_GOV_STEP_WISE
33a56757afSDurgadoss R	help
34a56757afSDurgadoss R	  Use the step_wise governor as default. This throttles the
35a56757afSDurgadoss R	  devices one step at a time.
36a56757afSDurgadoss R
37a56757afSDurgadoss Rconfig THERMAL_DEFAULT_GOV_FAIR_SHARE
38a56757afSDurgadoss R	bool "fair_share"
399d185d04SZhang Rui	select THERMAL_GOV_FAIR_SHARE
40a56757afSDurgadoss R	help
41a56757afSDurgadoss R	  Use the fair_share governor as default. This throttles the
42a56757afSDurgadoss R	  devices based on their 'contribution' to a zone. The
43a56757afSDurgadoss R	  contribution should be provided through platform data.
44a56757afSDurgadoss R
45a56757afSDurgadoss Rconfig THERMAL_DEFAULT_GOV_USER_SPACE
46a56757afSDurgadoss R	bool "user_space"
479d185d04SZhang Rui	select THERMAL_GOV_USER_SPACE
48a56757afSDurgadoss R	help
49a56757afSDurgadoss R	  Select this if you want to let the user space manage the
5072e19897SZhang Rui	  lpatform thermals.
5172e19897SZhang Rui
52a56757afSDurgadoss Rendchoice
5372e19897SZhang Rui
549d185d04SZhang Ruiconfig THERMAL_GOV_FAIR_SHARE
5572e19897SZhang Rui	bool "Fair-share thermal governor"
5672e19897SZhang Rui	help
5772e19897SZhang Rui	  Enable this to manage platform thermals using fair-share governor.
5872e19897SZhang Rui
599d185d04SZhang Ruiconfig THERMAL_GOV_STEP_WISE
6072e19897SZhang Rui	bool "Step_wise thermal governor"
6172e19897SZhang Rui	help
6272e19897SZhang Rui	  Enable this to manage platform thermals using a simple linear
6372e19897SZhang Rui
649d185d04SZhang Ruiconfig THERMAL_GOV_USER_SPACE
6572e19897SZhang Rui	bool "User_space thermal governor"
6672e19897SZhang Rui	help
6772e19897SZhang Rui	  Enable this to let the user space manage the platform thermals.
6872e19897SZhang Rui
6972e19897SZhang Ruiconfig CPU_THERMAL
70bbf7fc88SZhang Rui	bool "generic cpu cooling support"
7172e19897SZhang Rui	depends on CPU_FREQ
7272e19897SZhang Rui	select CPU_FREQ_TABLE
7372e19897SZhang Rui	help
7472e19897SZhang Rui	  This implements the generic cpu cooling mechanism through frequency
75f7188b3dSEduardo Valentin	  reduction. An ACPI version of this already exists
76f7188b3dSEduardo Valentin	  (drivers/acpi/processor_thermal.c).
7772e19897SZhang Rui	  This will be useful for platforms using the generic thermal interface
7872e19897SZhang Rui	  and not the ACPI interface.
79f7188b3dSEduardo Valentin
8072e19897SZhang Rui	  If you want this support, you should say Y here.
8172e19897SZhang Rui
82e6e238c3SAmit Daniel Kachhapconfig THERMAL_EMULATION
83e6e238c3SAmit Daniel Kachhap	bool "Thermal emulation mode support"
84e6e238c3SAmit Daniel Kachhap	help
85e6e238c3SAmit Daniel Kachhap	  Enable this option to make a emul_temp sysfs node in thermal zone
86e6e238c3SAmit Daniel Kachhap	  directory to support temperature emulation. With emulation sysfs node,
87e6e238c3SAmit Daniel Kachhap	  user can manually input temperature and test the different trip
88e6e238c3SAmit Daniel Kachhap	  threshold behaviour for simulation purpose.
89e6e238c3SAmit Daniel Kachhap
908837295aSEduardo Valentin	  WARNING: Be careful while enabling this option on production systems,
918837295aSEduardo Valentin	  because userland can easily disable the thermal policy by simply
928837295aSEduardo Valentin	  flooding this sysfs node with low temperature values.
938837295aSEduardo Valentin
94*ca3de46bSShawn Guoconfig IMX_THERMAL
95*ca3de46bSShawn Guo	tristate "Temperature sensor driver for Freescale i.MX SoCs"
96*ca3de46bSShawn Guo	depends on CPU_THERMAL
97*ca3de46bSShawn Guo	depends on MFD_SYSCON
98*ca3de46bSShawn Guo	depends on OF
99*ca3de46bSShawn Guo	help
100*ca3de46bSShawn Guo	  Support for Temperature Monitor (TEMPMON) found on Freescale i.MX SoCs.
101*ca3de46bSShawn Guo	  It supports one critical trip point and one passive trip point.  The
102*ca3de46bSShawn Guo	  cpufreq is used as the cooling device to throttle CPUs when the
103*ca3de46bSShawn Guo	  passive trip is crossed.
104*ca3de46bSShawn Guo
10572e19897SZhang Ruiconfig SPEAR_THERMAL
10672e19897SZhang Rui	bool "SPEAr thermal sensor driver"
10772e19897SZhang Rui	depends on PLAT_SPEAR
10872e19897SZhang Rui	depends on OF
10972e19897SZhang Rui	help
11072e19897SZhang Rui	  Enable this to plug the SPEAr thermal sensor driver into the Linux
11172e19897SZhang Rui	  thermal framework
11272e19897SZhang Rui
11372e19897SZhang Ruiconfig RCAR_THERMAL
11472e19897SZhang Rui	tristate "Renesas R-Car thermal driver"
11572e19897SZhang Rui	depends on ARCH_SHMOBILE
11672e19897SZhang Rui	help
11772e19897SZhang Rui	  Enable this to plug the R-Car thermal sensor driver into the Linux
11872e19897SZhang Rui	  thermal framework
11972e19897SZhang Rui
1207060aa36SNobuhiro Iwamatsuconfig KIRKWOOD_THERMAL
1217060aa36SNobuhiro Iwamatsu	tristate "Temperature sensor on Marvell Kirkwood SoCs"
1227060aa36SNobuhiro Iwamatsu	depends on ARCH_KIRKWOOD
1237060aa36SNobuhiro Iwamatsu	depends on OF
1247060aa36SNobuhiro Iwamatsu	help
1257060aa36SNobuhiro Iwamatsu	  Support for the Kirkwood thermal sensor driver into the Linux thermal
1267060aa36SNobuhiro Iwamatsu	  framework. Only kirkwood 88F6282 and 88F6283 have this sensor.
1277060aa36SNobuhiro Iwamatsu
12872e19897SZhang Ruiconfig EXYNOS_THERMAL
12972e19897SZhang Rui	tristate "Temperature sensor on Samsung EXYNOS"
13072e19897SZhang Rui	depends on (ARCH_EXYNOS4 || ARCH_EXYNOS5)
131ec54c74cSZhang Rui	depends on CPU_THERMAL
13272e19897SZhang Rui	help
133e41e85ccSMasanari Iida	  If you say yes here you get support for TMU (Thermal Management
13472e19897SZhang Rui	  Unit) on SAMSUNG EXYNOS series of SoC.
13572e19897SZhang Rui
13674ffa64cSAndrew Lunnconfig DOVE_THERMAL
13774ffa64cSAndrew Lunn	tristate "Temperature sensor on Marvell Dove SoCs"
13874ffa64cSAndrew Lunn	depends on ARCH_DOVE
13974ffa64cSAndrew Lunn	depends on OF
14074ffa64cSAndrew Lunn	help
14174ffa64cSAndrew Lunn	  Support for the Dove thermal sensor driver in the Linux thermal
14274ffa64cSAndrew Lunn	  framework.
14374ffa64cSAndrew Lunn
144aa1acb04Shongbo.zhangconfig DB8500_THERMAL
145aa1acb04Shongbo.zhang	bool "DB8500 thermal management"
146aa1acb04Shongbo.zhang	depends on ARCH_U8500
147aa1acb04Shongbo.zhang	default y
148aa1acb04Shongbo.zhang	help
149aa1acb04Shongbo.zhang	  Adds DB8500 thermal management implementation according to the thermal
150aa1acb04Shongbo.zhang	  management framework. A thermal zone with several trip points will be
151aa1acb04Shongbo.zhang	  created. Cooling devices can be bound to the trip points to cool this
152aa1acb04Shongbo.zhang	  thermal zone if trip points reached.
153aa1acb04Shongbo.zhang
154fa0d654cSEzequiel Garciaconfig ARMADA_THERMAL
155fa0d654cSEzequiel Garcia	tristate "Armada 370/XP thermal management"
156fa0d654cSEzequiel Garcia	depends on ARCH_MVEBU
157fa0d654cSEzequiel Garcia	depends on OF
158fa0d654cSEzequiel Garcia	help
159fa0d654cSEzequiel Garcia	  Enable this option if you want to have support for thermal management
160fa0d654cSEzequiel Garcia	  controller present in Armada 370 and Armada XP SoC.
161fa0d654cSEzequiel Garcia
162aa1acb04Shongbo.zhangconfig DB8500_CPUFREQ_COOLING
163aa1acb04Shongbo.zhang	tristate "DB8500 cpufreq cooling"
164aa1acb04Shongbo.zhang	depends on ARCH_U8500
165aa1acb04Shongbo.zhang	depends on CPU_THERMAL
166aa1acb04Shongbo.zhang	default y
167aa1acb04Shongbo.zhang	help
168aa1acb04Shongbo.zhang	  Adds DB8500 cpufreq cooling devices, and these cooling devices can be
169aa1acb04Shongbo.zhang	  bound to thermal zone trip points. When a trip point reached, the
170aa1acb04Shongbo.zhang	  bound cpufreq cooling device turns active to set CPU frequency low to
171aa1acb04Shongbo.zhang	  cool down the CPU.
17272e19897SZhang Rui
173d6d71ee4SJacob Panconfig INTEL_POWERCLAMP
174d6d71ee4SJacob Pan	tristate "Intel PowerClamp idle injection driver"
175d6d71ee4SJacob Pan	depends on THERMAL
176d6d71ee4SJacob Pan	depends on X86
177d6d71ee4SJacob Pan	depends on CPU_SUP_INTEL
178d6d71ee4SJacob Pan	help
179d6d71ee4SJacob Pan	  Enable this to enable Intel PowerClamp idle injection driver. This
180d6d71ee4SJacob Pan	  enforce idle time which results in more package C-state residency. The
181d6d71ee4SJacob Pan	  user interface is exposed via generic thermal framework.
182d6d71ee4SJacob Pan
183f1a18a10SSrinivas Pandruvadaconfig X86_PKG_TEMP_THERMAL
184f1a18a10SSrinivas Pandruvada	tristate "X86 package temperature thermal driver"
185b3ba0206SRandy Dunlap	depends on X86_THERMAL_VECTOR
186f1a18a10SSrinivas Pandruvada	select THERMAL_GOV_USER_SPACE
187f1a18a10SSrinivas Pandruvada	default m
188f1a18a10SSrinivas Pandruvada	help
189f1a18a10SSrinivas Pandruvada	  Enable this to register CPU digital sensor for package temperature as
190f1a18a10SSrinivas Pandruvada	  thermal zone. Each package will have its own thermal zone. There are
191f1a18a10SSrinivas Pandruvada	  two trip points which can be set by user to get notifications via thermal
192f1a18a10SSrinivas Pandruvada	  notification methods.
193f1a18a10SSrinivas Pandruvada
194eb982001SEduardo Valentinmenu "Texas Instruments thermal drivers"
195eb982001SEduardo Valentinsource "drivers/thermal/ti-soc-thermal/Kconfig"
196eb982001SEduardo Valentinendmenu
197f157f596SZhang Rui
19872e19897SZhang Ruiendif
199