xref: /linux/drivers/thermal/Kconfig (revision 5b8583d3bd7fc10cea07e4a5bfa59465758a39dc)
1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only
2203d3d4aSZhang Rui#
3eb850462SLinus Walleij# Generic thermal drivers configuration
4203d3d4aSZhang Rui#
5203d3d4aSZhang Rui
6203d3d4aSZhang Ruimenuconfig THERMAL
7eb850462SLinus Walleij	bool "Thermal drivers"
8203d3d4aSZhang Rui	help
9eb850462SLinus Walleij	  Thermal drivers offer a generic mechanism for
10203d3d4aSZhang Rui	  thermal management. Usually it's made up of one or more thermal
11eb850462SLinus Walleij	  zones and cooling devices.
12543a9561SLen Brown	  Each thermal zone contains its own temperature, trip points,
13eb850462SLinus Walleij	  and cooling devices.
14eb850462SLinus Walleij	  All platforms with ACPI or Open Firmware thermal support can use
15eb850462SLinus Walleij	  this driver.
16554b3529SDaniel Lezcano	  If you want this support, you should say Y here.
1716d75239SRene Herman
1872e19897SZhang Ruiif THERMAL
1972e19897SZhang Rui
20*5b8583d3SDaniel Lezcanoconfig THERMAL_NETLINK
21*5b8583d3SDaniel Lezcano	bool "Thermal netlink management"
22*5b8583d3SDaniel Lezcano	depends on NET
23*5b8583d3SDaniel Lezcano	default y
24*5b8583d3SDaniel Lezcano	help
25*5b8583d3SDaniel Lezcano	  The thermal framework has a netlink interface to do thermal
26*5b8583d3SDaniel Lezcano	  zones discovery, temperature readings and events such as
27*5b8583d3SDaniel Lezcano	  trip point crossed, cooling device update or governor
28*5b8583d3SDaniel Lezcano	  change. It is recommended to enable the feature.
29*5b8583d3SDaniel Lezcano
308ea22951SViresh Kumarconfig THERMAL_STATISTICS
318ea22951SViresh Kumar	bool "Thermal state transition statistics"
328ea22951SViresh Kumar	help
338ea22951SViresh Kumar	  Export thermal state transition statistics information through sysfs.
348ea22951SViresh Kumar
358ea22951SViresh Kumar	  If in doubt, say N.
368ea22951SViresh Kumar
37ef1d87e0SKeerthyconfig THERMAL_EMERGENCY_POWEROFF_DELAY_MS
38ef1d87e0SKeerthy	int "Emergency poweroff delay in milli-seconds"
39ef1d87e0SKeerthy	default 0
40ef1d87e0SKeerthy	help
41ef1d87e0SKeerthy	  Thermal subsystem will issue a graceful shutdown when
42ef1d87e0SKeerthy	  critical temperatures are reached using orderly_poweroff(). In
43ef1d87e0SKeerthy	  case of failure of an orderly_poweroff(), the thermal emergency
44ef1d87e0SKeerthy	  poweroff kicks in after a delay has elapsed and shuts down the system.
45ef1d87e0SKeerthy	  This config is number of milliseconds to delay before emergency
46ef1d87e0SKeerthy	  poweroff kicks in. Similarly to the critical trip point,
47ef1d87e0SKeerthy	  the delay should be carefully profiled so as to give adequate
48ef1d87e0SKeerthy	  time for orderly_poweroff() to finish on regular execution.
49ef1d87e0SKeerthy	  If set to 0 emergency poweroff will not be supported.
50ef1d87e0SKeerthy
51ef1d87e0SKeerthy	  In doubt, leave as 0.
52ef1d87e0SKeerthy
5316d75239SRene Hermanconfig THERMAL_HWMON
54ab92402aSJean Delvare	bool
550dd88793SEduardo Valentin	prompt "Expose thermal sensors as hwmon device"
5616d75239SRene Herman	depends on HWMON=y || HWMON=THERMAL
57ab92402aSJean Delvare	default y
580dd88793SEduardo Valentin	help
590dd88793SEduardo Valentin	  In case a sensor is registered with the thermal
600dd88793SEduardo Valentin	  framework, this option will also register it
610dd88793SEduardo Valentin	  as a hwmon. The sensor will then have the common
620dd88793SEduardo Valentin	  hwmon sysfs interface.
630dd88793SEduardo Valentin
640dd88793SEduardo Valentin	  Say 'Y' here if you want all thermal sensors to
650dd88793SEduardo Valentin	  have hwmon sysfs interface too.
666a92c366SVincenzo Frascino
674e5e4705SEduardo Valentinconfig THERMAL_OF
684e5e4705SEduardo Valentin	bool
694e5e4705SEduardo Valentin	prompt "APIs to parse thermal data out of device tree"
704e5e4705SEduardo Valentin	depends on OF
714e5e4705SEduardo Valentin	default y
724e5e4705SEduardo Valentin	help
734e5e4705SEduardo Valentin	  This options provides helpers to add the support to
744e5e4705SEduardo Valentin	  read and parse thermal data definitions out of the
754e5e4705SEduardo Valentin	  device tree blob.
764e5e4705SEduardo Valentin
774e5e4705SEduardo Valentin	  Say 'Y' here if you need to build thermal infrastructure
784e5e4705SEduardo Valentin	  based on device tree.
794e5e4705SEduardo Valentin
8035e94644SPunit Agrawalconfig THERMAL_WRITABLE_TRIPS
8135e94644SPunit Agrawal	bool "Enable writable trip points"
8235e94644SPunit Agrawal	help
8335e94644SPunit Agrawal	  This option allows the system integrator to choose whether
8435e94644SPunit Agrawal	  trip temperatures can be changed from userspace. The
8535e94644SPunit Agrawal	  writable trips need to be specified when setting up the
8635e94644SPunit Agrawal	  thermal zone but the choice here takes precedence.
8735e94644SPunit Agrawal
8835e94644SPunit Agrawal	  Say 'Y' here if you would like to allow userspace tools to
8935e94644SPunit Agrawal	  change trip temperatures.
9035e94644SPunit Agrawal
91a56757afSDurgadoss Rchoice
92a56757afSDurgadoss R	prompt "Default Thermal governor"
93a56757afSDurgadoss R	default THERMAL_DEFAULT_GOV_STEP_WISE
94a56757afSDurgadoss R	help
95a56757afSDurgadoss R	  This option sets which thermal governor shall be loaded at
96a56757afSDurgadoss R	  startup. If in doubt, select 'step_wise'.
97a56757afSDurgadoss R
98a56757afSDurgadoss Rconfig THERMAL_DEFAULT_GOV_STEP_WISE
99a56757afSDurgadoss R	bool "step_wise"
1009d185d04SZhang Rui	select THERMAL_GOV_STEP_WISE
101a56757afSDurgadoss R	help
102a56757afSDurgadoss R	  Use the step_wise governor as default. This throttles the
103a56757afSDurgadoss R	  devices one step at a time.
104a56757afSDurgadoss R
105a56757afSDurgadoss Rconfig THERMAL_DEFAULT_GOV_FAIR_SHARE
106a56757afSDurgadoss R	bool "fair_share"
1079d185d04SZhang Rui	select THERMAL_GOV_FAIR_SHARE
108a56757afSDurgadoss R	help
109a56757afSDurgadoss R	  Use the fair_share governor as default. This throttles the
110a56757afSDurgadoss R	  devices based on their 'contribution' to a zone. The
111a56757afSDurgadoss R	  contribution should be provided through platform data.
112a56757afSDurgadoss R
113a56757afSDurgadoss Rconfig THERMAL_DEFAULT_GOV_USER_SPACE
114a56757afSDurgadoss R	bool "user_space"
1159d185d04SZhang Rui	select THERMAL_GOV_USER_SPACE
116a56757afSDurgadoss R	help
117a56757afSDurgadoss R	  Select this if you want to let the user space manage the
118ece238feSRegid Ichira	  platform thermals.
11972e19897SZhang Rui
1206b775e87SJavi Merinoconfig THERMAL_DEFAULT_GOV_POWER_ALLOCATOR
1216b775e87SJavi Merino	bool "power_allocator"
12250260614SYueHaibing	depends on THERMAL_GOV_POWER_ALLOCATOR
1236b775e87SJavi Merino	help
1246b775e87SJavi Merino	  Select this if you want to control temperature based on
1256b775e87SJavi Merino	  system and device power allocation. This governor can only
1266b775e87SJavi Merino	  operate on cooling devices that implement the power API.
1276b775e87SJavi Merino
128a56757afSDurgadoss Rendchoice
12972e19897SZhang Rui
1309d185d04SZhang Ruiconfig THERMAL_GOV_FAIR_SHARE
13172e19897SZhang Rui	bool "Fair-share thermal governor"
13272e19897SZhang Rui	help
13372e19897SZhang Rui	  Enable this to manage platform thermals using fair-share governor.
13472e19897SZhang Rui
1359d185d04SZhang Ruiconfig THERMAL_GOV_STEP_WISE
13672e19897SZhang Rui	bool "Step_wise thermal governor"
13772e19897SZhang Rui	help
13872e19897SZhang Rui	  Enable this to manage platform thermals using a simple linear
139a8227948SLuka Perkov	  governor.
14072e19897SZhang Rui
141e4dbf98fSPeter Feuererconfig THERMAL_GOV_BANG_BANG
142e4dbf98fSPeter Feuerer	bool "Bang Bang thermal governor"
143e4dbf98fSPeter Feuerer	default n
144e4dbf98fSPeter Feuerer	help
145e4dbf98fSPeter Feuerer	  Enable this to manage platform thermals using bang bang governor.
146e4dbf98fSPeter Feuerer
147e4dbf98fSPeter Feuerer	  Say 'Y' here if you want to use two point temperature regulation
148e4dbf98fSPeter Feuerer	  used for fans without throttling.  Some fan drivers depend on this
149e4dbf98fSPeter Feuerer	  governor to be enabled (e.g. acerhdf).
150e4dbf98fSPeter Feuerer
1519d185d04SZhang Ruiconfig THERMAL_GOV_USER_SPACE
15272e19897SZhang Rui	bool "User_space thermal governor"
15372e19897SZhang Rui	help
15472e19897SZhang Rui	  Enable this to let the user space manage the platform thermals.
15572e19897SZhang Rui
1566b775e87SJavi Merinoconfig THERMAL_GOV_POWER_ALLOCATOR
1576b775e87SJavi Merino	bool "Power allocator thermal governor"
158a4e893e8SQuentin Perret	depends on ENERGY_MODEL
1596b775e87SJavi Merino	help
1606b775e87SJavi Merino	  Enable this to manage platform thermals by dynamically
1616b775e87SJavi Merino	  allocating and limiting power to devices.
1626b775e87SJavi Merino
16372e19897SZhang Ruiconfig CPU_THERMAL
1642e31c856SDaniel Lezcano	bool "Generic cpu cooling support"
16539d99cffSEduardo Valentin	depends on THERMAL_OF
16672e19897SZhang Rui	help
1672b586feaSDaniel Lezcano	  Enable the CPU cooling features. If the system has no active
1682b586feaSDaniel Lezcano	  cooling device available, this option allows to use the CPU
1692b586feaSDaniel Lezcano	  as a cooling device.
1702b586feaSDaniel Lezcano
1712b586feaSDaniel Lezcanoif CPU_THERMAL
1722b586feaSDaniel Lezcano
1732b586feaSDaniel Lezcanoconfig CPU_FREQ_THERMAL
1742b586feaSDaniel Lezcano	bool "CPU frequency cooling device"
1752b586feaSDaniel Lezcano	depends on CPU_FREQ
1762b586feaSDaniel Lezcano	default y
1772b586feaSDaniel Lezcano	help
17872e19897SZhang Rui	  This implements the generic cpu cooling mechanism through frequency
179f7188b3dSEduardo Valentin	  reduction. An ACPI version of this already exists
180f7188b3dSEduardo Valentin	  (drivers/acpi/processor_thermal.c).
18172e19897SZhang Rui	  This will be useful for platforms using the generic thermal interface
18272e19897SZhang Rui	  and not the ACPI interface.
183f7188b3dSEduardo Valentin
184a4c428e5SDaniel Lezcanoconfig CPU_IDLE_THERMAL
185a4c428e5SDaniel Lezcano	bool "CPU idle cooling device"
186a4c428e5SDaniel Lezcano	depends on IDLE_INJECT
187a4c428e5SDaniel Lezcano	help
188a4c428e5SDaniel Lezcano	  This implements the CPU cooling mechanism through
189a4c428e5SDaniel Lezcano	  idle injection. This will throttle the CPU by injecting
190a4c428e5SDaniel Lezcano	  idle cycle.
1912b586feaSDaniel Lezcanoendif
19272e19897SZhang Rui
193f9df89d8SEduardo Valentinconfig CLOCK_THERMAL
194f9df89d8SEduardo Valentin	bool "Generic clock cooling support"
195f9df89d8SEduardo Valentin	depends on COMMON_CLK
196f9df89d8SEduardo Valentin	depends on PM_OPP
197f9df89d8SEduardo Valentin	help
198f9df89d8SEduardo Valentin	  This entry implements the generic clock cooling mechanism through
199f9df89d8SEduardo Valentin	  frequency clipping. Typically used to cool off co-processors. The
200f9df89d8SEduardo Valentin	  device that is configured to use this cooling mechanism will be
201f9df89d8SEduardo Valentin	  controlled to reduce clock frequency whenever temperature is high.
202f9df89d8SEduardo Valentin
203a76caf55SØrjan Eideconfig DEVFREQ_THERMAL
204a76caf55SØrjan Eide	bool "Generic device cooling support"
205a76caf55SØrjan Eide	depends on PM_DEVFREQ
206a76caf55SØrjan Eide	depends on PM_OPP
207a76caf55SØrjan Eide	help
208a76caf55SØrjan Eide	  This implements the generic devfreq cooling mechanism through
209a76caf55SØrjan Eide	  frequency reduction for devices using devfreq.
210a76caf55SØrjan Eide
211a76caf55SØrjan Eide	  This will throttle the device by limiting the maximum allowed DVFS
212a76caf55SØrjan Eide	  frequency corresponding to the cooling level.
213a76caf55SØrjan Eide
214a76caf55SØrjan Eide	  In order to use the power extensions of the cooling device,
215a76caf55SØrjan Eide	  devfreq should use the simple_ondemand governor.
216a76caf55SØrjan Eide
217f9df89d8SEduardo Valentin	  If you want this support, you should say Y here.
218f9df89d8SEduardo Valentin
219e6e238c3SAmit Daniel Kachhapconfig THERMAL_EMULATION
220e6e238c3SAmit Daniel Kachhap	bool "Thermal emulation mode support"
221e6e238c3SAmit Daniel Kachhap	help
222e6e238c3SAmit Daniel Kachhap	  Enable this option to make a emul_temp sysfs node in thermal zone
223e6e238c3SAmit Daniel Kachhap	  directory to support temperature emulation. With emulation sysfs node,
224e6e238c3SAmit Daniel Kachhap	  user can manually input temperature and test the different trip
225e6e238c3SAmit Daniel Kachhap	  threshold behaviour for simulation purpose.
226e6e238c3SAmit Daniel Kachhap
2278837295aSEduardo Valentin	  WARNING: Be careful while enabling this option on production systems,
2288837295aSEduardo Valentin	  because userland can easily disable the thermal policy by simply
2298837295aSEduardo Valentin	  flooding this sysfs node with low temperature values.
2308837295aSEduardo Valentin
23171aa3693STalel Shenharconfig THERMAL_MMIO
23271aa3693STalel Shenhar	tristate "Generic Thermal MMIO driver"
23371aa3693STalel Shenhar	depends on OF || COMPILE_TEST
2346ec8070bSTalel Shenhar	depends on HAS_IOMEM
23571aa3693STalel Shenhar	help
23671aa3693STalel Shenhar	  This option enables the generic thermal MMIO driver that will use
23771aa3693STalel Shenhar	  memory-mapped reads to get the temperature.  Any HW/System that
23871aa3693STalel Shenhar	  allows temperature reading by a single memory-mapped reading, be it
23971aa3693STalel Shenhar	  register or shared memory, is a potential candidate to work with this
24071aa3693STalel Shenhar	  driver.
24171aa3693STalel Shenhar
2429a5238a9Skongxinweiconfig HISI_THERMAL
2439a5238a9Skongxinwei	tristate "Hisilicon thermal driver"
244f05f4821SLeo Yan	depends on ARCH_HISI || COMPILE_TEST
245bf82c350SKrzysztof Kozlowski	depends on HAS_IOMEM
246f05f4821SLeo Yan	depends on OF
247f05f4821SLeo Yan	default y
2489a5238a9Skongxinwei	help
2499a5238a9Skongxinwei	  Enable this to plug hisilicon's thermal sensor driver into the Linux
2509a5238a9Skongxinwei	  thermal framework. cpufreq is used as the cooling device to throttle
2519a5238a9Skongxinwei	  CPUs when the passive trip is crossed.
2529a5238a9Skongxinwei
253ca3de46bSShawn Guoconfig IMX_THERMAL
254ca3de46bSShawn Guo	tristate "Temperature sensor driver for Freescale i.MX SoCs"
255c589c566SAnson Huang	depends on ARCH_MXC || COMPILE_TEST
256531fcdebSArnd Bergmann	depends on NVMEM || !NVMEM
257ca3de46bSShawn Guo	depends on MFD_SYSCON
258ca3de46bSShawn Guo	depends on OF
259ca3de46bSShawn Guo	help
260ca3de46bSShawn Guo	  Support for Temperature Monitor (TEMPMON) found on Freescale i.MX SoCs.
261ca3de46bSShawn Guo	  It supports one critical trip point and one passive trip point.  The
262ca3de46bSShawn Guo	  cpufreq is used as the cooling device to throttle CPUs when the
263ca3de46bSShawn Guo	  passive trip is crossed.
264ca3de46bSShawn Guo
265e20db70dSAnson Huangconfig IMX_SC_THERMAL
266e20db70dSAnson Huang	tristate "Temperature sensor driver for NXP i.MX SoCs with System Controller"
267ef502fc1SAnson Huang	depends on IMX_SCU
268e20db70dSAnson Huang	depends on OF
269e20db70dSAnson Huang	help
270e20db70dSAnson Huang	  Support for Temperature Monitor (TEMPMON) found on NXP i.MX SoCs with
271e20db70dSAnson Huang	  system controller inside, Linux kernel has to communicate with system
272e20db70dSAnson Huang	  controller via MU (message unit) IPC to get temperature from thermal
273e20db70dSAnson Huang	  sensor. It supports one critical trip point and one
274e20db70dSAnson Huang	  passive trip point for each thermal sensor.
275e20db70dSAnson Huang
2765eed800aSAnson Huangconfig IMX8MM_THERMAL
2775eed800aSAnson Huang	tristate "Temperature sensor driver for Freescale i.MX8MM SoC"
27852cbc58bSAnson Huang	depends on ARCH_MXC || COMPILE_TEST
2795eed800aSAnson Huang	depends on OF
2805eed800aSAnson Huang	help
2815eed800aSAnson Huang	  Support for Thermal Monitoring Unit (TMU) found on Freescale i.MX8MM SoC.
2825eed800aSAnson Huang	  It supports one critical trip point and one passive trip point. The
2835eed800aSAnson Huang	  cpufreq is used as the cooling device to throttle CPUs when the passive
2845eed800aSAnson Huang	  trip is crossed.
2855eed800aSAnson Huang
28648b2bce8SKeerthyconfig K3_THERMAL
28748b2bce8SKeerthy	tristate "Texas Instruments K3 thermal support"
28848b2bce8SKeerthy	depends on ARCH_K3 || COMPILE_TEST
28948b2bce8SKeerthy	help
29048b2bce8SKeerthy	  If you say yes here you get thermal support for the Texas Instruments
29148b2bce8SKeerthy	  K3 SoC family. The current chip supported is:
29248b2bce8SKeerthy	  - AM654
29348b2bce8SKeerthy
29448b2bce8SKeerthy	  This includes temperature reading functionality.
29548b2bce8SKeerthy
296ec4664b3SLaxman Dewanganconfig MAX77620_THERMAL
297ec4664b3SLaxman Dewangan	tristate "Temperature sensor driver for Maxim MAX77620 PMIC"
298ec4664b3SLaxman Dewangan	depends on MFD_MAX77620
299ec4664b3SLaxman Dewangan	depends on OF
300ec4664b3SLaxman Dewangan	help
301ec4664b3SLaxman Dewangan	  Support for die junction temperature warning alarm for Maxim
302ec4664b3SLaxman Dewangan	  Semiconductor PMIC MAX77620 device. Device generates two alarm
303ec4664b3SLaxman Dewangan	  interrupts when PMIC die temperature cross the threshold of
304ec4664b3SLaxman Dewangan	  120 degC and 140 degC.
305ec4664b3SLaxman Dewangan
30643528445SJia Hongtaoconfig QORIQ_THERMAL
30743528445SJia Hongtao	tristate "QorIQ Thermal Monitoring Unit"
3081ab20c0eSGeert Uytterhoeven	depends on THERMAL_OF && HAS_IOMEM
3091ab20c0eSGeert Uytterhoeven	depends on PPC_E500MC || SOC_LS1021A || ARCH_LAYERSCAPE || (ARCH_MXC && ARM64) || COMPILE_TEST
310cbe259fdSYuantian Tang	select REGMAP_MMIO
31143528445SJia Hongtao	help
31243528445SJia Hongtao	  Support for Thermal Monitoring Unit (TMU) found on QorIQ platforms.
31343528445SJia Hongtao	  It supports one critical trip point and one passive trip point. The
31443528445SJia Hongtao	  cpufreq is used as the cooling device to throttle CPUs when the
31543528445SJia Hongtao	  passive trip is crossed.
31643528445SJia Hongtao
31772e19897SZhang Ruiconfig SPEAR_THERMAL
3184d2f1794SArnd Bergmann	tristate "SPEAr thermal sensor driver"
319aa2937b7SEduardo Valentin	depends on PLAT_SPEAR || COMPILE_TEST
320bf82c350SKrzysztof Kozlowski	depends on HAS_IOMEM
32172e19897SZhang Rui	depends on OF
32272e19897SZhang Rui	help
32372e19897SZhang Rui	  Enable this to plug the SPEAr thermal sensor driver into the Linux
324a8227948SLuka Perkov	  thermal framework.
32572e19897SZhang Rui
326dccc5c3bSYangtao Liconfig SUN8I_THERMAL
327dccc5c3bSYangtao Li	tristate "Allwinner sun8i thermal driver"
328dccc5c3bSYangtao Li	depends on ARCH_SUNXI || COMPILE_TEST
329dccc5c3bSYangtao Li	depends on HAS_IOMEM
330dccc5c3bSYangtao Li	depends on NVMEM
331dccc5c3bSYangtao Li	depends on OF
332dccc5c3bSYangtao Li	depends on RESET_CONTROLLER
333dccc5c3bSYangtao Li	help
334dccc5c3bSYangtao Li	  Support for the sun8i thermal sensor driver into the Linux thermal
335dccc5c3bSYangtao Li	  framework.
336dccc5c3bSYangtao Li
337dccc5c3bSYangtao Li	  To compile this driver as a module, choose M here: the
338dccc5c3bSYangtao Li	  module will be called sun8i-thermal.
339dccc5c3bSYangtao Li
340cbac8f63SCaesar Wangconfig ROCKCHIP_THERMAL
341cbac8f63SCaesar Wang	tristate "Rockchip thermal driver"
342444f9b00SEduardo Valentin	depends on ARCH_ROCKCHIP || COMPILE_TEST
343cbac8f63SCaesar Wang	depends on RESET_CONTROLLER
344bf82c350SKrzysztof Kozlowski	depends on HAS_IOMEM
345cbac8f63SCaesar Wang	help
346cbac8f63SCaesar Wang	  Rockchip thermal driver provides support for Temperature sensor
347cbac8f63SCaesar Wang	  ADC (TS-ADC) found on Rockchip SoCs. It supports one critical
348cbac8f63SCaesar Wang	  trip point. Cpufreq is used as the cooling device and will throttle
349cbac8f63SCaesar Wang	  CPUs when the Temperature crosses the passive trip point.
350cbac8f63SCaesar Wang
35172e19897SZhang Ruiconfig RCAR_THERMAL
35272e19897SZhang Rui	tristate "Renesas R-Car thermal driver"
3538255e4e2SSimon Horman	depends on ARCH_RENESAS || COMPILE_TEST
354d1c8b041SRichard Weinberger	depends on HAS_IOMEM
35572e19897SZhang Rui	help
35672e19897SZhang Rui	  Enable this to plug the R-Car thermal sensor driver into the Linux
357a8227948SLuka Perkov	  thermal framework.
35872e19897SZhang Rui
359564e73d2SWolfram Sangconfig RCAR_GEN3_THERMAL
360564e73d2SWolfram Sang	tristate "Renesas R-Car Gen3 thermal driver"
361564e73d2SWolfram Sang	depends on ARCH_RENESAS || COMPILE_TEST
362564e73d2SWolfram Sang	depends on HAS_IOMEM
363564e73d2SWolfram Sang	depends on OF
364564e73d2SWolfram Sang	help
365564e73d2SWolfram Sang	  Enable this to plug the R-Car Gen3 thermal sensor driver into the Linux
366564e73d2SWolfram Sang	  thermal framework.
367564e73d2SWolfram Sang
3687060aa36SNobuhiro Iwamatsuconfig KIRKWOOD_THERMAL
3697060aa36SNobuhiro Iwamatsu	tristate "Temperature sensor on Marvell Kirkwood SoCs"
3709c8aa959SEduardo Valentin	depends on MACH_KIRKWOOD || COMPILE_TEST
371bf82c350SKrzysztof Kozlowski	depends on HAS_IOMEM
3727060aa36SNobuhiro Iwamatsu	depends on OF
3737060aa36SNobuhiro Iwamatsu	help
3747060aa36SNobuhiro Iwamatsu	  Support for the Kirkwood thermal sensor driver into the Linux thermal
3757060aa36SNobuhiro Iwamatsu	  framework. Only kirkwood 88F6282 and 88F6283 have this sensor.
3767060aa36SNobuhiro Iwamatsu
37774ffa64cSAndrew Lunnconfig DOVE_THERMAL
37874ffa64cSAndrew Lunn	tristate "Temperature sensor on Marvell Dove SoCs"
37907fffd5cSEduardo Valentin	depends on ARCH_DOVE || MACH_DOVE || COMPILE_TEST
380bf82c350SKrzysztof Kozlowski	depends on HAS_IOMEM
38174ffa64cSAndrew Lunn	depends on OF
38274ffa64cSAndrew Lunn	help
38374ffa64cSAndrew Lunn	  Support for the Dove thermal sensor driver in the Linux thermal
38474ffa64cSAndrew Lunn	  framework.
38574ffa64cSAndrew Lunn
386aa1acb04Shongbo.zhangconfig DB8500_THERMAL
38726716ce1SArnd Bergmann	tristate "DB8500 thermal management"
388cb063a83SLinus Walleij	depends on MFD_DB8500_PRCMU && OF
389aa1acb04Shongbo.zhang	default y
390aa1acb04Shongbo.zhang	help
391aa1acb04Shongbo.zhang	  Adds DB8500 thermal management implementation according to the thermal
392aa1acb04Shongbo.zhang	  management framework. A thermal zone with several trip points will be
393aa1acb04Shongbo.zhang	  created. Cooling devices can be bound to the trip points to cool this
394aa1acb04Shongbo.zhang	  thermal zone if trip points reached.
395aa1acb04Shongbo.zhang
396fa0d654cSEzequiel Garciaconfig ARMADA_THERMAL
397a9d58a1aSMiquel Raynal	tristate "Marvell EBU Armada SoCs thermal management"
3981b158267SEduardo Valentin	depends on ARCH_MVEBU || COMPILE_TEST
399bf82c350SKrzysztof Kozlowski	depends on HAS_IOMEM
400fa0d654cSEzequiel Garcia	depends on OF
401fa0d654cSEzequiel Garcia	help
402fa0d654cSEzequiel Garcia	  Enable this option if you want to have support for thermal management
403a9d58a1aSMiquel Raynal	  controller present in Marvell EBU Armada SoCs (370,375,XP,38x,7K,8K).
404fa0d654cSEzequiel Garcia
405608567aaSSteve Twissconfig DA9062_THERMAL
406608567aaSSteve Twiss	tristate "DA9062/DA9061 Dialog Semiconductor thermal driver"
407608567aaSSteve Twiss	depends on MFD_DA9062 || COMPILE_TEST
408608567aaSSteve Twiss	depends on OF
409608567aaSSteve Twiss	help
410608567aaSSteve Twiss	  Enable this for the Dialog Semiconductor thermal sensor driver.
411608567aaSSteve Twiss	  This will report PMIC junction over-temperature for one thermal trip
412608567aaSSteve Twiss	  zone.
413608567aaSSteve Twiss	  Compatible with the DA9062 and DA9061 PMICs.
414608567aaSSteve Twiss
415a92db1c8SSascha Hauerconfig MTK_THERMAL
416a92db1c8SSascha Hauer	tristate "Temperature sensor driver for mediatek SoCs"
417a92db1c8SSascha Hauer	depends on ARCH_MEDIATEK || COMPILE_TEST
41874e5053cSEduardo Valentin	depends on HAS_IOMEM
41962e14f6fSRandy Dunlap	depends on NVMEM || NVMEM=n
420a6f4850dSJohannes Berg	depends on RESET_CONTROLLER
421a92db1c8SSascha Hauer	default y
422a92db1c8SSascha Hauer	help
423a92db1c8SSascha Hauer	  Enable this option if you want to have support for thermal management
424a92db1c8SSascha Hauer	  controller present in Mediatek SoCs
425a92db1c8SSascha Hauer
426421eda10SGuillaume La Roqueconfig AMLOGIC_THERMAL
427421eda10SGuillaume La Roque	tristate "Amlogic Thermal Support"
428421eda10SGuillaume La Roque	default ARCH_MESON
429421eda10SGuillaume La Roque	depends on OF && ARCH_MESON
430421eda10SGuillaume La Roque	help
431421eda10SGuillaume La Roque	  If you say yes here you get support for Amlogic Thermal
432421eda10SGuillaume La Roque	  for G12 SoC Family.
433421eda10SGuillaume La Roque
434421eda10SGuillaume La Roque	  This driver can also be built as a module. If so, the module will
435421eda10SGuillaume La Roque	  be called amlogic_thermal.
436421eda10SGuillaume La Roque
4373e8c4d31SAmit Kucheriamenu "Intel thermal drivers"
4383e8c4d31SAmit Kucheriadepends on X86 || X86_INTEL_QUARK || COMPILE_TEST
4393e8c4d31SAmit Kucheriasource "drivers/thermal/intel/Kconfig"
4403e8c4d31SAmit Kucheriaendmenu
4413e8c4d31SAmit Kucheria
442a94cb7eeSRafał Miłeckimenu "Broadcom thermal drivers"
443250e2110SPramod Kumardepends on ARCH_BCM || ARCH_BRCMSTB || ARCH_BCM2835 || ARCH_BCM_IPROC || \
444250e2110SPramod Kumar		COMPILE_TEST
445a94cb7eeSRafał Miłeckisource "drivers/thermal/broadcom/Kconfig"
446a94cb7eeSRafał Miłeckiendmenu
447a94cb7eeSRafał Miłecki
448eb982001SEduardo Valentinmenu "Texas Instruments thermal drivers"
449ec2feb47SEduardo Valentindepends on ARCH_HAS_BANDGAP || COMPILE_TEST
450bf82c350SKrzysztof Kozlowskidepends on HAS_IOMEM
451eb982001SEduardo Valentinsource "drivers/thermal/ti-soc-thermal/Kconfig"
452eb982001SEduardo Valentinendmenu
453f157f596SZhang Rui
454c6821378SAmit Daniel Kachhapmenu "Samsung thermal drivers"
4552bf42735SEduardo Valentindepends on ARCH_EXYNOS || COMPILE_TEST
456c6821378SAmit Daniel Kachhapsource "drivers/thermal/samsung/Kconfig"
457c6821378SAmit Daniel Kachhapendmenu
458c6821378SAmit Daniel Kachhap
45960aef7ceSLee Jonesmenu "STMicroelectronics thermal drivers"
4601d693155SDavid HERNANDEZ SANCHEZdepends on (ARCH_STI || ARCH_STM32) && OF
46160aef7ceSLee Jonessource "drivers/thermal/st/Kconfig"
46260aef7ceSLee Jonesendmenu
46360aef7ceSLee Jones
4640b58c08bSMarc Gonzalezconfig TANGO_THERMAL
4650b58c08bSMarc Gonzalez	tristate "Tango thermal management"
4660b58c08bSMarc Gonzalez	depends on ARCH_TANGO || COMPILE_TEST
4670b58c08bSMarc Gonzalez	help
4680b58c08bSMarc Gonzalez	  Enable the Tango thermal driver, which supports the primitive
4690b58c08bSMarc Gonzalez	  temperature sensor embedded in Tango chips since the SMP8758.
4700b58c08bSMarc Gonzalez	  This sensor only generates a 1-bit signal to indicate whether
4710b58c08bSMarc Gonzalez	  the die temperature exceeds a programmable threshold.
4720b58c08bSMarc Gonzalez
473a4dff94fSWei Nisource "drivers/thermal/tegra/Kconfig"
474a4dff94fSWei Ni
475b3aef78fSLaxman Dewanganconfig GENERIC_ADC_THERMAL
476b3aef78fSLaxman Dewangan	tristate "Generic ADC based thermal sensor"
477b3aef78fSLaxman Dewangan	depends on IIO
478b3aef78fSLaxman Dewangan	help
479b3aef78fSLaxman Dewangan	  This enabled a thermal sysfs driver for the temperature sensor
480b3aef78fSLaxman Dewangan	  which is connected to the General Purpose ADC. The ADC channel
481b3aef78fSLaxman Dewangan	  is read via IIO framework and the channel information is provided
482b3aef78fSLaxman Dewangan	  to this driver. This driver reports the temperature by reading ADC
483b3aef78fSLaxman Dewangan	  channel and converts it to temperature based on lookup table.
484b3aef78fSLaxman Dewangan
4859066073cSRajendra Nayakmenu "Qualcomm thermal drivers"
4869066073cSRajendra Nayakdepends on (ARCH_QCOM && OF) || COMPILE_TEST
4879066073cSRajendra Nayaksource "drivers/thermal/qcom/Kconfig"
4889066073cSRajendra Nayakendmenu
4899066073cSRajendra Nayak
49050fdd36fSBaoyou Xieconfig ZX2967_THERMAL
49150fdd36fSBaoyou Xie	tristate "Thermal sensors on zx2967 SoC"
49250fdd36fSBaoyou Xie	depends on ARCH_ZX || COMPILE_TEST
49350fdd36fSBaoyou Xie	help
49450fdd36fSBaoyou Xie	  Enable the zx2967 thermal sensors driver, which supports
49550fdd36fSBaoyou Xie	  the primitive temperature sensor embedded in zx2967 SoCs.
49650fdd36fSBaoyou Xie	  This sensor generates the real time die temperature.
49750fdd36fSBaoyou Xie
49886da4391SKunihiko Hayashiconfig UNIPHIER_THERMAL
49986da4391SKunihiko Hayashi	tristate "Socionext UniPhier thermal driver"
50086da4391SKunihiko Hayashi	depends on ARCH_UNIPHIER || COMPILE_TEST
50186da4391SKunihiko Hayashi	depends on THERMAL_OF && MFD_SYSCON
50286da4391SKunihiko Hayashi	help
50386da4391SKunihiko Hayashi	  Enable this to plug in UniPhier on-chip PVT thermal driver into the
50486da4391SKunihiko Hayashi	  thermal framework. The driver supports CPU thermal zone temperature
50586da4391SKunihiko Hayashi	  reporting and a couple of trip points.
506554fdbafSFreeman Liu
507554fdbafSFreeman Liuconfig SPRD_THERMAL
508554fdbafSFreeman Liu	tristate "Temperature sensor on Spreadtrum SoCs"
509554fdbafSFreeman Liu	depends on ARCH_SPRD || COMPILE_TEST
510554fdbafSFreeman Liu	help
511554fdbafSFreeman Liu	  Support for the Spreadtrum thermal sensor driver in the Linux thermal
512554fdbafSFreeman Liu	  framework.
51372e19897SZhang Ruiendif
514