xref: /linux/drivers/thermal/Kconfig (revision cbe259fd80b7b02fba0dad79d8fdda8b70a8b963)
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
208ea22951SViresh Kumarconfig THERMAL_STATISTICS
218ea22951SViresh Kumar	bool "Thermal state transition statistics"
228ea22951SViresh Kumar	help
238ea22951SViresh Kumar	  Export thermal state transition statistics information through sysfs.
248ea22951SViresh Kumar
258ea22951SViresh Kumar	  If in doubt, say N.
268ea22951SViresh Kumar
27ef1d87e0SKeerthyconfig THERMAL_EMERGENCY_POWEROFF_DELAY_MS
28ef1d87e0SKeerthy	int "Emergency poweroff delay in milli-seconds"
29ef1d87e0SKeerthy	default 0
30ef1d87e0SKeerthy	help
31ef1d87e0SKeerthy	  Thermal subsystem will issue a graceful shutdown when
32ef1d87e0SKeerthy	  critical temperatures are reached using orderly_poweroff(). In
33ef1d87e0SKeerthy	  case of failure of an orderly_poweroff(), the thermal emergency
34ef1d87e0SKeerthy	  poweroff kicks in after a delay has elapsed and shuts down the system.
35ef1d87e0SKeerthy	  This config is number of milliseconds to delay before emergency
36ef1d87e0SKeerthy	  poweroff kicks in. Similarly to the critical trip point,
37ef1d87e0SKeerthy	  the delay should be carefully profiled so as to give adequate
38ef1d87e0SKeerthy	  time for orderly_poweroff() to finish on regular execution.
39ef1d87e0SKeerthy	  If set to 0 emergency poweroff will not be supported.
40ef1d87e0SKeerthy
41ef1d87e0SKeerthy	  In doubt, leave as 0.
42ef1d87e0SKeerthy
4316d75239SRene Hermanconfig THERMAL_HWMON
44ab92402aSJean Delvare	bool
450dd88793SEduardo Valentin	prompt "Expose thermal sensors as hwmon device"
4616d75239SRene Herman	depends on HWMON=y || HWMON=THERMAL
47ab92402aSJean Delvare	default y
480dd88793SEduardo Valentin	help
490dd88793SEduardo Valentin	  In case a sensor is registered with the thermal
500dd88793SEduardo Valentin	  framework, this option will also register it
510dd88793SEduardo Valentin	  as a hwmon. The sensor will then have the common
520dd88793SEduardo Valentin	  hwmon sysfs interface.
530dd88793SEduardo Valentin
540dd88793SEduardo Valentin	  Say 'Y' here if you want all thermal sensors to
550dd88793SEduardo Valentin	  have hwmon sysfs interface too.
566a92c366SVincenzo Frascino
574e5e4705SEduardo Valentinconfig THERMAL_OF
584e5e4705SEduardo Valentin	bool
594e5e4705SEduardo Valentin	prompt "APIs to parse thermal data out of device tree"
604e5e4705SEduardo Valentin	depends on OF
614e5e4705SEduardo Valentin	default y
624e5e4705SEduardo Valentin	help
634e5e4705SEduardo Valentin	  This options provides helpers to add the support to
644e5e4705SEduardo Valentin	  read and parse thermal data definitions out of the
654e5e4705SEduardo Valentin	  device tree blob.
664e5e4705SEduardo Valentin
674e5e4705SEduardo Valentin	  Say 'Y' here if you need to build thermal infrastructure
684e5e4705SEduardo Valentin	  based on device tree.
694e5e4705SEduardo Valentin
7035e94644SPunit Agrawalconfig THERMAL_WRITABLE_TRIPS
7135e94644SPunit Agrawal	bool "Enable writable trip points"
7235e94644SPunit Agrawal	help
7335e94644SPunit Agrawal	  This option allows the system integrator to choose whether
7435e94644SPunit Agrawal	  trip temperatures can be changed from userspace. The
7535e94644SPunit Agrawal	  writable trips need to be specified when setting up the
7635e94644SPunit Agrawal	  thermal zone but the choice here takes precedence.
7735e94644SPunit Agrawal
7835e94644SPunit Agrawal	  Say 'Y' here if you would like to allow userspace tools to
7935e94644SPunit Agrawal	  change trip temperatures.
8035e94644SPunit Agrawal
81a56757afSDurgadoss Rchoice
82a56757afSDurgadoss R	prompt "Default Thermal governor"
83a56757afSDurgadoss R	default THERMAL_DEFAULT_GOV_STEP_WISE
84a56757afSDurgadoss R	help
85a56757afSDurgadoss R	  This option sets which thermal governor shall be loaded at
86a56757afSDurgadoss R	  startup. If in doubt, select 'step_wise'.
87a56757afSDurgadoss R
88a56757afSDurgadoss Rconfig THERMAL_DEFAULT_GOV_STEP_WISE
89a56757afSDurgadoss R	bool "step_wise"
909d185d04SZhang Rui	select THERMAL_GOV_STEP_WISE
91a56757afSDurgadoss R	help
92a56757afSDurgadoss R	  Use the step_wise governor as default. This throttles the
93a56757afSDurgadoss R	  devices one step at a time.
94a56757afSDurgadoss R
95a56757afSDurgadoss Rconfig THERMAL_DEFAULT_GOV_FAIR_SHARE
96a56757afSDurgadoss R	bool "fair_share"
979d185d04SZhang Rui	select THERMAL_GOV_FAIR_SHARE
98a56757afSDurgadoss R	help
99a56757afSDurgadoss R	  Use the fair_share governor as default. This throttles the
100a56757afSDurgadoss R	  devices based on their 'contribution' to a zone. The
101a56757afSDurgadoss R	  contribution should be provided through platform data.
102a56757afSDurgadoss R
103a56757afSDurgadoss Rconfig THERMAL_DEFAULT_GOV_USER_SPACE
104a56757afSDurgadoss R	bool "user_space"
1059d185d04SZhang Rui	select THERMAL_GOV_USER_SPACE
106a56757afSDurgadoss R	help
107a56757afSDurgadoss R	  Select this if you want to let the user space manage the
108ece238feSRegid Ichira	  platform thermals.
10972e19897SZhang Rui
1106b775e87SJavi Merinoconfig THERMAL_DEFAULT_GOV_POWER_ALLOCATOR
1116b775e87SJavi Merino	bool "power_allocator"
11250260614SYueHaibing	depends on THERMAL_GOV_POWER_ALLOCATOR
1136b775e87SJavi Merino	help
1146b775e87SJavi Merino	  Select this if you want to control temperature based on
1156b775e87SJavi Merino	  system and device power allocation. This governor can only
1166b775e87SJavi Merino	  operate on cooling devices that implement the power API.
1176b775e87SJavi Merino
118a56757afSDurgadoss Rendchoice
11972e19897SZhang Rui
1209d185d04SZhang Ruiconfig THERMAL_GOV_FAIR_SHARE
12172e19897SZhang Rui	bool "Fair-share thermal governor"
12272e19897SZhang Rui	help
12372e19897SZhang Rui	  Enable this to manage platform thermals using fair-share governor.
12472e19897SZhang Rui
1259d185d04SZhang Ruiconfig THERMAL_GOV_STEP_WISE
12672e19897SZhang Rui	bool "Step_wise thermal governor"
12772e19897SZhang Rui	help
12872e19897SZhang Rui	  Enable this to manage platform thermals using a simple linear
129a8227948SLuka Perkov	  governor.
13072e19897SZhang Rui
131e4dbf98fSPeter Feuererconfig THERMAL_GOV_BANG_BANG
132e4dbf98fSPeter Feuerer	bool "Bang Bang thermal governor"
133e4dbf98fSPeter Feuerer	default n
134e4dbf98fSPeter Feuerer	help
135e4dbf98fSPeter Feuerer	  Enable this to manage platform thermals using bang bang governor.
136e4dbf98fSPeter Feuerer
137e4dbf98fSPeter Feuerer	  Say 'Y' here if you want to use two point temperature regulation
138e4dbf98fSPeter Feuerer	  used for fans without throttling.  Some fan drivers depend on this
139e4dbf98fSPeter Feuerer	  governor to be enabled (e.g. acerhdf).
140e4dbf98fSPeter Feuerer
1419d185d04SZhang Ruiconfig THERMAL_GOV_USER_SPACE
14272e19897SZhang Rui	bool "User_space thermal governor"
14372e19897SZhang Rui	help
14472e19897SZhang Rui	  Enable this to let the user space manage the platform thermals.
14572e19897SZhang Rui
1466b775e87SJavi Merinoconfig THERMAL_GOV_POWER_ALLOCATOR
1476b775e87SJavi Merino	bool "Power allocator thermal governor"
148a4e893e8SQuentin Perret	depends on ENERGY_MODEL
1496b775e87SJavi Merino	help
1506b775e87SJavi Merino	  Enable this to manage platform thermals by dynamically
1516b775e87SJavi Merino	  allocating and limiting power to devices.
1526b775e87SJavi Merino
15372e19897SZhang Ruiconfig CPU_THERMAL
1542e31c856SDaniel Lezcano	bool "Generic cpu cooling support"
15539d99cffSEduardo Valentin	depends on THERMAL_OF
15672e19897SZhang Rui	help
1572b586feaSDaniel Lezcano	  Enable the CPU cooling features. If the system has no active
1582b586feaSDaniel Lezcano	  cooling device available, this option allows to use the CPU
1592b586feaSDaniel Lezcano	  as a cooling device.
1602b586feaSDaniel Lezcano
1612b586feaSDaniel Lezcanoif CPU_THERMAL
1622b586feaSDaniel Lezcano
1632b586feaSDaniel Lezcanoconfig CPU_FREQ_THERMAL
1642b586feaSDaniel Lezcano	bool "CPU frequency cooling device"
1652b586feaSDaniel Lezcano	depends on CPU_FREQ
1662b586feaSDaniel Lezcano	default y
1672b586feaSDaniel Lezcano	help
16872e19897SZhang Rui	  This implements the generic cpu cooling mechanism through frequency
169f7188b3dSEduardo Valentin	  reduction. An ACPI version of this already exists
170f7188b3dSEduardo Valentin	  (drivers/acpi/processor_thermal.c).
17172e19897SZhang Rui	  This will be useful for platforms using the generic thermal interface
17272e19897SZhang Rui	  and not the ACPI interface.
173f7188b3dSEduardo Valentin
174a4c428e5SDaniel Lezcanoconfig CPU_IDLE_THERMAL
175a4c428e5SDaniel Lezcano	bool "CPU idle cooling device"
176a4c428e5SDaniel Lezcano	depends on IDLE_INJECT
177a4c428e5SDaniel Lezcano	help
178a4c428e5SDaniel Lezcano	  This implements the CPU cooling mechanism through
179a4c428e5SDaniel Lezcano	  idle injection. This will throttle the CPU by injecting
180a4c428e5SDaniel Lezcano	  idle cycle.
1812b586feaSDaniel Lezcanoendif
18272e19897SZhang Rui
183f9df89d8SEduardo Valentinconfig CLOCK_THERMAL
184f9df89d8SEduardo Valentin	bool "Generic clock cooling support"
185f9df89d8SEduardo Valentin	depends on COMMON_CLK
186f9df89d8SEduardo Valentin	depends on PM_OPP
187f9df89d8SEduardo Valentin	help
188f9df89d8SEduardo Valentin	  This entry implements the generic clock cooling mechanism through
189f9df89d8SEduardo Valentin	  frequency clipping. Typically used to cool off co-processors. The
190f9df89d8SEduardo Valentin	  device that is configured to use this cooling mechanism will be
191f9df89d8SEduardo Valentin	  controlled to reduce clock frequency whenever temperature is high.
192f9df89d8SEduardo Valentin
193a76caf55SØrjan Eideconfig DEVFREQ_THERMAL
194a76caf55SØrjan Eide	bool "Generic device cooling support"
195a76caf55SØrjan Eide	depends on PM_DEVFREQ
196a76caf55SØrjan Eide	depends on PM_OPP
197a76caf55SØrjan Eide	help
198a76caf55SØrjan Eide	  This implements the generic devfreq cooling mechanism through
199a76caf55SØrjan Eide	  frequency reduction for devices using devfreq.
200a76caf55SØrjan Eide
201a76caf55SØrjan Eide	  This will throttle the device by limiting the maximum allowed DVFS
202a76caf55SØrjan Eide	  frequency corresponding to the cooling level.
203a76caf55SØrjan Eide
204a76caf55SØrjan Eide	  In order to use the power extensions of the cooling device,
205a76caf55SØrjan Eide	  devfreq should use the simple_ondemand governor.
206a76caf55SØrjan Eide
207f9df89d8SEduardo Valentin	  If you want this support, you should say Y here.
208f9df89d8SEduardo Valentin
209e6e238c3SAmit Daniel Kachhapconfig THERMAL_EMULATION
210e6e238c3SAmit Daniel Kachhap	bool "Thermal emulation mode support"
211e6e238c3SAmit Daniel Kachhap	help
212e6e238c3SAmit Daniel Kachhap	  Enable this option to make a emul_temp sysfs node in thermal zone
213e6e238c3SAmit Daniel Kachhap	  directory to support temperature emulation. With emulation sysfs node,
214e6e238c3SAmit Daniel Kachhap	  user can manually input temperature and test the different trip
215e6e238c3SAmit Daniel Kachhap	  threshold behaviour for simulation purpose.
216e6e238c3SAmit Daniel Kachhap
2178837295aSEduardo Valentin	  WARNING: Be careful while enabling this option on production systems,
2188837295aSEduardo Valentin	  because userland can easily disable the thermal policy by simply
2198837295aSEduardo Valentin	  flooding this sysfs node with low temperature values.
2208837295aSEduardo Valentin
22171aa3693STalel Shenharconfig THERMAL_MMIO
22271aa3693STalel Shenhar	tristate "Generic Thermal MMIO driver"
22371aa3693STalel Shenhar	depends on OF || COMPILE_TEST
2246ec8070bSTalel Shenhar	depends on HAS_IOMEM
22571aa3693STalel Shenhar	help
22671aa3693STalel Shenhar	  This option enables the generic thermal MMIO driver that will use
22771aa3693STalel Shenhar	  memory-mapped reads to get the temperature.  Any HW/System that
22871aa3693STalel Shenhar	  allows temperature reading by a single memory-mapped reading, be it
22971aa3693STalel Shenhar	  register or shared memory, is a potential candidate to work with this
23071aa3693STalel Shenhar	  driver.
23171aa3693STalel Shenhar
2329a5238a9Skongxinweiconfig HISI_THERMAL
2339a5238a9Skongxinwei	tristate "Hisilicon thermal driver"
234f05f4821SLeo Yan	depends on ARCH_HISI || COMPILE_TEST
235bf82c350SKrzysztof Kozlowski	depends on HAS_IOMEM
236f05f4821SLeo Yan	depends on OF
237f05f4821SLeo Yan	default y
2389a5238a9Skongxinwei	help
2399a5238a9Skongxinwei	  Enable this to plug hisilicon's thermal sensor driver into the Linux
2409a5238a9Skongxinwei	  thermal framework. cpufreq is used as the cooling device to throttle
2419a5238a9Skongxinwei	  CPUs when the passive trip is crossed.
2429a5238a9Skongxinwei
243ca3de46bSShawn Guoconfig IMX_THERMAL
244ca3de46bSShawn Guo	tristate "Temperature sensor driver for Freescale i.MX SoCs"
245c589c566SAnson Huang	depends on ARCH_MXC || COMPILE_TEST
246531fcdebSArnd Bergmann	depends on NVMEM || !NVMEM
247ca3de46bSShawn Guo	depends on MFD_SYSCON
248ca3de46bSShawn Guo	depends on OF
249ca3de46bSShawn Guo	help
250ca3de46bSShawn Guo	  Support for Temperature Monitor (TEMPMON) found on Freescale i.MX SoCs.
251ca3de46bSShawn Guo	  It supports one critical trip point and one passive trip point.  The
252ca3de46bSShawn Guo	  cpufreq is used as the cooling device to throttle CPUs when the
253ca3de46bSShawn Guo	  passive trip is crossed.
254ca3de46bSShawn Guo
255e20db70dSAnson Huangconfig IMX_SC_THERMAL
256e20db70dSAnson Huang	tristate "Temperature sensor driver for NXP i.MX SoCs with System Controller"
257ef502fc1SAnson Huang	depends on IMX_SCU
258e20db70dSAnson Huang	depends on OF
259e20db70dSAnson Huang	help
260e20db70dSAnson Huang	  Support for Temperature Monitor (TEMPMON) found on NXP i.MX SoCs with
261e20db70dSAnson Huang	  system controller inside, Linux kernel has to communicate with system
262e20db70dSAnson Huang	  controller via MU (message unit) IPC to get temperature from thermal
263e20db70dSAnson Huang	  sensor. It supports one critical trip point and one
264e20db70dSAnson Huang	  passive trip point for each thermal sensor.
265e20db70dSAnson Huang
2665eed800aSAnson Huangconfig IMX8MM_THERMAL
2675eed800aSAnson Huang	tristate "Temperature sensor driver for Freescale i.MX8MM SoC"
2685eed800aSAnson Huang	depends on ARCH_MXC
2695eed800aSAnson Huang	depends on OF
2705eed800aSAnson Huang	help
2715eed800aSAnson Huang	  Support for Thermal Monitoring Unit (TMU) found on Freescale i.MX8MM SoC.
2725eed800aSAnson Huang	  It supports one critical trip point and one passive trip point. The
2735eed800aSAnson Huang	  cpufreq is used as the cooling device to throttle CPUs when the passive
2745eed800aSAnson Huang	  trip is crossed.
2755eed800aSAnson Huang
276ec4664b3SLaxman Dewanganconfig MAX77620_THERMAL
277ec4664b3SLaxman Dewangan	tristate "Temperature sensor driver for Maxim MAX77620 PMIC"
278ec4664b3SLaxman Dewangan	depends on MFD_MAX77620
279ec4664b3SLaxman Dewangan	depends on OF
280ec4664b3SLaxman Dewangan	help
281ec4664b3SLaxman Dewangan	  Support for die junction temperature warning alarm for Maxim
282ec4664b3SLaxman Dewangan	  Semiconductor PMIC MAX77620 device. Device generates two alarm
283ec4664b3SLaxman Dewangan	  interrupts when PMIC die temperature cross the threshold of
284ec4664b3SLaxman Dewangan	  120 degC and 140 degC.
285ec4664b3SLaxman Dewangan
28643528445SJia Hongtaoconfig QORIQ_THERMAL
28743528445SJia Hongtao	tristate "QorIQ Thermal Monitoring Unit"
28843528445SJia Hongtao	depends on THERMAL_OF
28943528445SJia Hongtao	depends on HAS_IOMEM
290*cbe259fdSYuantian Tang	select REGMAP_MMIO
29143528445SJia Hongtao	help
29243528445SJia Hongtao	  Support for Thermal Monitoring Unit (TMU) found on QorIQ platforms.
29343528445SJia Hongtao	  It supports one critical trip point and one passive trip point. The
29443528445SJia Hongtao	  cpufreq is used as the cooling device to throttle CPUs when the
29543528445SJia Hongtao	  passive trip is crossed.
29643528445SJia Hongtao
29772e19897SZhang Ruiconfig SPEAR_THERMAL
2984d2f1794SArnd Bergmann	tristate "SPEAr thermal sensor driver"
299aa2937b7SEduardo Valentin	depends on PLAT_SPEAR || COMPILE_TEST
300bf82c350SKrzysztof Kozlowski	depends on HAS_IOMEM
30172e19897SZhang Rui	depends on OF
30272e19897SZhang Rui	help
30372e19897SZhang Rui	  Enable this to plug the SPEAr thermal sensor driver into the Linux
304a8227948SLuka Perkov	  thermal framework.
30572e19897SZhang Rui
306dccc5c3bSYangtao Liconfig SUN8I_THERMAL
307dccc5c3bSYangtao Li	tristate "Allwinner sun8i thermal driver"
308dccc5c3bSYangtao Li	depends on ARCH_SUNXI || COMPILE_TEST
309dccc5c3bSYangtao Li	depends on HAS_IOMEM
310dccc5c3bSYangtao Li	depends on NVMEM
311dccc5c3bSYangtao Li	depends on OF
312dccc5c3bSYangtao Li	depends on RESET_CONTROLLER
313dccc5c3bSYangtao Li	help
314dccc5c3bSYangtao Li	  Support for the sun8i thermal sensor driver into the Linux thermal
315dccc5c3bSYangtao Li	  framework.
316dccc5c3bSYangtao Li
317dccc5c3bSYangtao Li	  To compile this driver as a module, choose M here: the
318dccc5c3bSYangtao Li	  module will be called sun8i-thermal.
319dccc5c3bSYangtao Li
320cbac8f63SCaesar Wangconfig ROCKCHIP_THERMAL
321cbac8f63SCaesar Wang	tristate "Rockchip thermal driver"
322444f9b00SEduardo Valentin	depends on ARCH_ROCKCHIP || COMPILE_TEST
323cbac8f63SCaesar Wang	depends on RESET_CONTROLLER
324bf82c350SKrzysztof Kozlowski	depends on HAS_IOMEM
325cbac8f63SCaesar Wang	help
326cbac8f63SCaesar Wang	  Rockchip thermal driver provides support for Temperature sensor
327cbac8f63SCaesar Wang	  ADC (TS-ADC) found on Rockchip SoCs. It supports one critical
328cbac8f63SCaesar Wang	  trip point. Cpufreq is used as the cooling device and will throttle
329cbac8f63SCaesar Wang	  CPUs when the Temperature crosses the passive trip point.
330cbac8f63SCaesar Wang
33172e19897SZhang Ruiconfig RCAR_THERMAL
33272e19897SZhang Rui	tristate "Renesas R-Car thermal driver"
3338255e4e2SSimon Horman	depends on ARCH_RENESAS || COMPILE_TEST
334d1c8b041SRichard Weinberger	depends on HAS_IOMEM
33572e19897SZhang Rui	help
33672e19897SZhang Rui	  Enable this to plug the R-Car thermal sensor driver into the Linux
337a8227948SLuka Perkov	  thermal framework.
33872e19897SZhang Rui
339564e73d2SWolfram Sangconfig RCAR_GEN3_THERMAL
340564e73d2SWolfram Sang	tristate "Renesas R-Car Gen3 thermal driver"
341564e73d2SWolfram Sang	depends on ARCH_RENESAS || COMPILE_TEST
342564e73d2SWolfram Sang	depends on HAS_IOMEM
343564e73d2SWolfram Sang	depends on OF
344564e73d2SWolfram Sang	help
345564e73d2SWolfram Sang	  Enable this to plug the R-Car Gen3 thermal sensor driver into the Linux
346564e73d2SWolfram Sang	  thermal framework.
347564e73d2SWolfram Sang
3487060aa36SNobuhiro Iwamatsuconfig KIRKWOOD_THERMAL
3497060aa36SNobuhiro Iwamatsu	tristate "Temperature sensor on Marvell Kirkwood SoCs"
3509c8aa959SEduardo Valentin	depends on MACH_KIRKWOOD || COMPILE_TEST
351bf82c350SKrzysztof Kozlowski	depends on HAS_IOMEM
3527060aa36SNobuhiro Iwamatsu	depends on OF
3537060aa36SNobuhiro Iwamatsu	help
3547060aa36SNobuhiro Iwamatsu	  Support for the Kirkwood thermal sensor driver into the Linux thermal
3557060aa36SNobuhiro Iwamatsu	  framework. Only kirkwood 88F6282 and 88F6283 have this sensor.
3567060aa36SNobuhiro Iwamatsu
35774ffa64cSAndrew Lunnconfig DOVE_THERMAL
35874ffa64cSAndrew Lunn	tristate "Temperature sensor on Marvell Dove SoCs"
35907fffd5cSEduardo Valentin	depends on ARCH_DOVE || MACH_DOVE || COMPILE_TEST
360bf82c350SKrzysztof Kozlowski	depends on HAS_IOMEM
36174ffa64cSAndrew Lunn	depends on OF
36274ffa64cSAndrew Lunn	help
36374ffa64cSAndrew Lunn	  Support for the Dove thermal sensor driver in the Linux thermal
36474ffa64cSAndrew Lunn	  framework.
36574ffa64cSAndrew Lunn
366aa1acb04Shongbo.zhangconfig DB8500_THERMAL
36726716ce1SArnd Bergmann	tristate "DB8500 thermal management"
368cb063a83SLinus Walleij	depends on MFD_DB8500_PRCMU && OF
369aa1acb04Shongbo.zhang	default y
370aa1acb04Shongbo.zhang	help
371aa1acb04Shongbo.zhang	  Adds DB8500 thermal management implementation according to the thermal
372aa1acb04Shongbo.zhang	  management framework. A thermal zone with several trip points will be
373aa1acb04Shongbo.zhang	  created. Cooling devices can be bound to the trip points to cool this
374aa1acb04Shongbo.zhang	  thermal zone if trip points reached.
375aa1acb04Shongbo.zhang
376fa0d654cSEzequiel Garciaconfig ARMADA_THERMAL
377a9d58a1aSMiquel Raynal	tristate "Marvell EBU Armada SoCs thermal management"
3781b158267SEduardo Valentin	depends on ARCH_MVEBU || COMPILE_TEST
379bf82c350SKrzysztof Kozlowski	depends on HAS_IOMEM
380fa0d654cSEzequiel Garcia	depends on OF
381fa0d654cSEzequiel Garcia	help
382fa0d654cSEzequiel Garcia	  Enable this option if you want to have support for thermal management
383a9d58a1aSMiquel Raynal	  controller present in Marvell EBU Armada SoCs (370,375,XP,38x,7K,8K).
384fa0d654cSEzequiel Garcia
385608567aaSSteve Twissconfig DA9062_THERMAL
386608567aaSSteve Twiss	tristate "DA9062/DA9061 Dialog Semiconductor thermal driver"
387608567aaSSteve Twiss	depends on MFD_DA9062 || COMPILE_TEST
388608567aaSSteve Twiss	depends on OF
389608567aaSSteve Twiss	help
390608567aaSSteve Twiss	  Enable this for the Dialog Semiconductor thermal sensor driver.
391608567aaSSteve Twiss	  This will report PMIC junction over-temperature for one thermal trip
392608567aaSSteve Twiss	  zone.
393608567aaSSteve Twiss	  Compatible with the DA9062 and DA9061 PMICs.
394608567aaSSteve Twiss
395a92db1c8SSascha Hauerconfig MTK_THERMAL
396a92db1c8SSascha Hauer	tristate "Temperature sensor driver for mediatek SoCs"
397a92db1c8SSascha Hauer	depends on ARCH_MEDIATEK || COMPILE_TEST
39874e5053cSEduardo Valentin	depends on HAS_IOMEM
39962e14f6fSRandy Dunlap	depends on NVMEM || NVMEM=n
400a6f4850dSJohannes Berg	depends on RESET_CONTROLLER
401a92db1c8SSascha Hauer	default y
402a92db1c8SSascha Hauer	help
403a92db1c8SSascha Hauer	  Enable this option if you want to have support for thermal management
404a92db1c8SSascha Hauer	  controller present in Mediatek SoCs
405a92db1c8SSascha Hauer
406421eda10SGuillaume La Roqueconfig AMLOGIC_THERMAL
407421eda10SGuillaume La Roque	tristate "Amlogic Thermal Support"
408421eda10SGuillaume La Roque	default ARCH_MESON
409421eda10SGuillaume La Roque	depends on OF && ARCH_MESON
410421eda10SGuillaume La Roque	help
411421eda10SGuillaume La Roque	  If you say yes here you get support for Amlogic Thermal
412421eda10SGuillaume La Roque	  for G12 SoC Family.
413421eda10SGuillaume La Roque
414421eda10SGuillaume La Roque	  This driver can also be built as a module. If so, the module will
415421eda10SGuillaume La Roque	  be called amlogic_thermal.
416421eda10SGuillaume La Roque
4173e8c4d31SAmit Kucheriamenu "Intel thermal drivers"
4183e8c4d31SAmit Kucheriadepends on X86 || X86_INTEL_QUARK || COMPILE_TEST
4193e8c4d31SAmit Kucheriasource "drivers/thermal/intel/Kconfig"
4203e8c4d31SAmit Kucheriaendmenu
4213e8c4d31SAmit Kucheria
422a94cb7eeSRafał Miłeckimenu "Broadcom thermal drivers"
423250e2110SPramod Kumardepends on ARCH_BCM || ARCH_BRCMSTB || ARCH_BCM2835 || ARCH_BCM_IPROC || \
424250e2110SPramod Kumar		COMPILE_TEST
425a94cb7eeSRafał Miłeckisource "drivers/thermal/broadcom/Kconfig"
426a94cb7eeSRafał Miłeckiendmenu
427a94cb7eeSRafał Miłecki
428eb982001SEduardo Valentinmenu "Texas Instruments thermal drivers"
429ec2feb47SEduardo Valentindepends on ARCH_HAS_BANDGAP || COMPILE_TEST
430bf82c350SKrzysztof Kozlowskidepends on HAS_IOMEM
431eb982001SEduardo Valentinsource "drivers/thermal/ti-soc-thermal/Kconfig"
432eb982001SEduardo Valentinendmenu
433f157f596SZhang Rui
434c6821378SAmit Daniel Kachhapmenu "Samsung thermal drivers"
4352bf42735SEduardo Valentindepends on ARCH_EXYNOS || COMPILE_TEST
436c6821378SAmit Daniel Kachhapsource "drivers/thermal/samsung/Kconfig"
437c6821378SAmit Daniel Kachhapendmenu
438c6821378SAmit Daniel Kachhap
43960aef7ceSLee Jonesmenu "STMicroelectronics thermal drivers"
4401d693155SDavid HERNANDEZ SANCHEZdepends on (ARCH_STI || ARCH_STM32) && OF
44160aef7ceSLee Jonessource "drivers/thermal/st/Kconfig"
44260aef7ceSLee Jonesendmenu
44360aef7ceSLee Jones
4440b58c08bSMarc Gonzalezconfig TANGO_THERMAL
4450b58c08bSMarc Gonzalez	tristate "Tango thermal management"
4460b58c08bSMarc Gonzalez	depends on ARCH_TANGO || COMPILE_TEST
4470b58c08bSMarc Gonzalez	help
4480b58c08bSMarc Gonzalez	  Enable the Tango thermal driver, which supports the primitive
4490b58c08bSMarc Gonzalez	  temperature sensor embedded in Tango chips since the SMP8758.
4500b58c08bSMarc Gonzalez	  This sensor only generates a 1-bit signal to indicate whether
4510b58c08bSMarc Gonzalez	  the die temperature exceeds a programmable threshold.
4520b58c08bSMarc Gonzalez
453a4dff94fSWei Nisource "drivers/thermal/tegra/Kconfig"
454a4dff94fSWei Ni
455b3aef78fSLaxman Dewanganconfig GENERIC_ADC_THERMAL
456b3aef78fSLaxman Dewangan	tristate "Generic ADC based thermal sensor"
457b3aef78fSLaxman Dewangan	depends on IIO
458b3aef78fSLaxman Dewangan	help
459b3aef78fSLaxman Dewangan	  This enabled a thermal sysfs driver for the temperature sensor
460b3aef78fSLaxman Dewangan	  which is connected to the General Purpose ADC. The ADC channel
461b3aef78fSLaxman Dewangan	  is read via IIO framework and the channel information is provided
462b3aef78fSLaxman Dewangan	  to this driver. This driver reports the temperature by reading ADC
463b3aef78fSLaxman Dewangan	  channel and converts it to temperature based on lookup table.
464b3aef78fSLaxman Dewangan
4659066073cSRajendra Nayakmenu "Qualcomm thermal drivers"
4669066073cSRajendra Nayakdepends on (ARCH_QCOM && OF) || COMPILE_TEST
4679066073cSRajendra Nayaksource "drivers/thermal/qcom/Kconfig"
4689066073cSRajendra Nayakendmenu
4699066073cSRajendra Nayak
47050fdd36fSBaoyou Xieconfig ZX2967_THERMAL
47150fdd36fSBaoyou Xie	tristate "Thermal sensors on zx2967 SoC"
47250fdd36fSBaoyou Xie	depends on ARCH_ZX || COMPILE_TEST
47350fdd36fSBaoyou Xie	help
47450fdd36fSBaoyou Xie	  Enable the zx2967 thermal sensors driver, which supports
47550fdd36fSBaoyou Xie	  the primitive temperature sensor embedded in zx2967 SoCs.
47650fdd36fSBaoyou Xie	  This sensor generates the real time die temperature.
47750fdd36fSBaoyou Xie
47886da4391SKunihiko Hayashiconfig UNIPHIER_THERMAL
47986da4391SKunihiko Hayashi	tristate "Socionext UniPhier thermal driver"
48086da4391SKunihiko Hayashi	depends on ARCH_UNIPHIER || COMPILE_TEST
48186da4391SKunihiko Hayashi	depends on THERMAL_OF && MFD_SYSCON
48286da4391SKunihiko Hayashi	help
48386da4391SKunihiko Hayashi	  Enable this to plug in UniPhier on-chip PVT thermal driver into the
48486da4391SKunihiko Hayashi	  thermal framework. The driver supports CPU thermal zone temperature
48586da4391SKunihiko Hayashi	  reporting and a couple of trip points.
486554fdbafSFreeman Liu
487554fdbafSFreeman Liuconfig SPRD_THERMAL
488554fdbafSFreeman Liu	tristate "Temperature sensor on Spreadtrum SoCs"
489554fdbafSFreeman Liu	depends on ARCH_SPRD || COMPILE_TEST
490554fdbafSFreeman Liu	help
491554fdbafSFreeman Liu	  Support for the Spreadtrum thermal sensor driver in the Linux thermal
492554fdbafSFreeman Liu	  framework.
49372e19897SZhang Ruiendif
494