xref: /linux/drivers/thermal/Kconfig (revision 608567aac3206ae886c79688fbb8a62c473b55ef)
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
200dd88793SEduardo Valentin	prompt "Expose thermal sensors as hwmon device"
2116d75239SRene Herman	depends on HWMON=y || HWMON=THERMAL
22ab92402aSJean Delvare	default y
230dd88793SEduardo Valentin	help
240dd88793SEduardo Valentin	  In case a sensor is registered with the thermal
250dd88793SEduardo Valentin	  framework, this option will also register it
260dd88793SEduardo Valentin	  as a hwmon. The sensor will then have the common
270dd88793SEduardo Valentin	  hwmon sysfs interface.
280dd88793SEduardo Valentin
290dd88793SEduardo Valentin	  Say 'Y' here if you want all thermal sensors to
300dd88793SEduardo Valentin	  have hwmon sysfs interface too.
316a92c366SVincenzo Frascino
324e5e4705SEduardo Valentinconfig THERMAL_OF
334e5e4705SEduardo Valentin	bool
344e5e4705SEduardo Valentin	prompt "APIs to parse thermal data out of device tree"
354e5e4705SEduardo Valentin	depends on OF
364e5e4705SEduardo Valentin	default y
374e5e4705SEduardo Valentin	help
384e5e4705SEduardo Valentin	  This options provides helpers to add the support to
394e5e4705SEduardo Valentin	  read and parse thermal data definitions out of the
404e5e4705SEduardo Valentin	  device tree blob.
414e5e4705SEduardo Valentin
424e5e4705SEduardo Valentin	  Say 'Y' here if you need to build thermal infrastructure
434e5e4705SEduardo Valentin	  based on device tree.
444e5e4705SEduardo Valentin
4535e94644SPunit Agrawalconfig THERMAL_WRITABLE_TRIPS
4635e94644SPunit Agrawal	bool "Enable writable trip points"
4735e94644SPunit Agrawal	help
4835e94644SPunit Agrawal	  This option allows the system integrator to choose whether
4935e94644SPunit Agrawal	  trip temperatures can be changed from userspace. The
5035e94644SPunit Agrawal	  writable trips need to be specified when setting up the
5135e94644SPunit Agrawal	  thermal zone but the choice here takes precedence.
5235e94644SPunit Agrawal
5335e94644SPunit Agrawal	  Say 'Y' here if you would like to allow userspace tools to
5435e94644SPunit Agrawal	  change trip temperatures.
5535e94644SPunit Agrawal
56a56757afSDurgadoss Rchoice
57a56757afSDurgadoss R	prompt "Default Thermal governor"
58a56757afSDurgadoss R	default THERMAL_DEFAULT_GOV_STEP_WISE
59a56757afSDurgadoss R	help
60a56757afSDurgadoss R	  This option sets which thermal governor shall be loaded at
61a56757afSDurgadoss R	  startup. If in doubt, select 'step_wise'.
62a56757afSDurgadoss R
63a56757afSDurgadoss Rconfig THERMAL_DEFAULT_GOV_STEP_WISE
64a56757afSDurgadoss R	bool "step_wise"
659d185d04SZhang Rui	select THERMAL_GOV_STEP_WISE
66a56757afSDurgadoss R	help
67a56757afSDurgadoss R	  Use the step_wise governor as default. This throttles the
68a56757afSDurgadoss R	  devices one step at a time.
69a56757afSDurgadoss R
70a56757afSDurgadoss Rconfig THERMAL_DEFAULT_GOV_FAIR_SHARE
71a56757afSDurgadoss R	bool "fair_share"
729d185d04SZhang Rui	select THERMAL_GOV_FAIR_SHARE
73a56757afSDurgadoss R	help
74a56757afSDurgadoss R	  Use the fair_share governor as default. This throttles the
75a56757afSDurgadoss R	  devices based on their 'contribution' to a zone. The
76a56757afSDurgadoss R	  contribution should be provided through platform data.
77a56757afSDurgadoss R
78a56757afSDurgadoss Rconfig THERMAL_DEFAULT_GOV_USER_SPACE
79a56757afSDurgadoss R	bool "user_space"
809d185d04SZhang Rui	select THERMAL_GOV_USER_SPACE
81a56757afSDurgadoss R	help
82a56757afSDurgadoss R	  Select this if you want to let the user space manage the
83ece238feSRegid Ichira	  platform thermals.
8472e19897SZhang Rui
856b775e87SJavi Merinoconfig THERMAL_DEFAULT_GOV_POWER_ALLOCATOR
866b775e87SJavi Merino	bool "power_allocator"
876b775e87SJavi Merino	select THERMAL_GOV_POWER_ALLOCATOR
886b775e87SJavi Merino	help
896b775e87SJavi Merino	  Select this if you want to control temperature based on
906b775e87SJavi Merino	  system and device power allocation. This governor can only
916b775e87SJavi Merino	  operate on cooling devices that implement the power API.
926b775e87SJavi Merino
93a56757afSDurgadoss Rendchoice
9472e19897SZhang Rui
959d185d04SZhang Ruiconfig THERMAL_GOV_FAIR_SHARE
9672e19897SZhang Rui	bool "Fair-share thermal governor"
9772e19897SZhang Rui	help
9872e19897SZhang Rui	  Enable this to manage platform thermals using fair-share governor.
9972e19897SZhang Rui
1009d185d04SZhang Ruiconfig THERMAL_GOV_STEP_WISE
10172e19897SZhang Rui	bool "Step_wise thermal governor"
10272e19897SZhang Rui	help
10372e19897SZhang Rui	  Enable this to manage platform thermals using a simple linear
104a8227948SLuka Perkov	  governor.
10572e19897SZhang Rui
106e4dbf98fSPeter Feuererconfig THERMAL_GOV_BANG_BANG
107e4dbf98fSPeter Feuerer	bool "Bang Bang thermal governor"
108e4dbf98fSPeter Feuerer	default n
109e4dbf98fSPeter Feuerer	help
110e4dbf98fSPeter Feuerer	  Enable this to manage platform thermals using bang bang governor.
111e4dbf98fSPeter Feuerer
112e4dbf98fSPeter Feuerer	  Say 'Y' here if you want to use two point temperature regulation
113e4dbf98fSPeter Feuerer	  used for fans without throttling.  Some fan drivers depend on this
114e4dbf98fSPeter Feuerer	  governor to be enabled (e.g. acerhdf).
115e4dbf98fSPeter Feuerer
1169d185d04SZhang Ruiconfig THERMAL_GOV_USER_SPACE
11772e19897SZhang Rui	bool "User_space thermal governor"
11872e19897SZhang Rui	help
11972e19897SZhang Rui	  Enable this to let the user space manage the platform thermals.
12072e19897SZhang Rui
1216b775e87SJavi Merinoconfig THERMAL_GOV_POWER_ALLOCATOR
1226b775e87SJavi Merino	bool "Power allocator thermal governor"
1236b775e87SJavi Merino	help
1246b775e87SJavi Merino	  Enable this to manage platform thermals by dynamically
1256b775e87SJavi Merino	  allocating and limiting power to devices.
1266b775e87SJavi Merino
12772e19897SZhang Ruiconfig CPU_THERMAL
128bbf7fc88SZhang Rui	bool "generic cpu cooling support"
12972e19897SZhang Rui	depends on CPU_FREQ
13039d99cffSEduardo Valentin	depends on THERMAL_OF
13172e19897SZhang Rui	help
13272e19897SZhang Rui	  This implements the generic cpu cooling mechanism through frequency
133f7188b3dSEduardo Valentin	  reduction. An ACPI version of this already exists
134f7188b3dSEduardo Valentin	  (drivers/acpi/processor_thermal.c).
13572e19897SZhang Rui	  This will be useful for platforms using the generic thermal interface
13672e19897SZhang Rui	  and not the ACPI interface.
137f7188b3dSEduardo Valentin
13872e19897SZhang Rui	  If you want this support, you should say Y here.
13972e19897SZhang Rui
140f9df89d8SEduardo Valentinconfig CLOCK_THERMAL
141f9df89d8SEduardo Valentin	bool "Generic clock cooling support"
142f9df89d8SEduardo Valentin	depends on COMMON_CLK
143f9df89d8SEduardo Valentin	depends on PM_OPP
144f9df89d8SEduardo Valentin	help
145f9df89d8SEduardo Valentin	  This entry implements the generic clock cooling mechanism through
146f9df89d8SEduardo Valentin	  frequency clipping. Typically used to cool off co-processors. The
147f9df89d8SEduardo Valentin	  device that is configured to use this cooling mechanism will be
148f9df89d8SEduardo Valentin	  controlled to reduce clock frequency whenever temperature is high.
149f9df89d8SEduardo Valentin
150a76caf55SØrjan Eideconfig DEVFREQ_THERMAL
151a76caf55SØrjan Eide	bool "Generic device cooling support"
152a76caf55SØrjan Eide	depends on PM_DEVFREQ
153a76caf55SØrjan Eide	depends on PM_OPP
154a76caf55SØrjan Eide	help
155a76caf55SØrjan Eide	  This implements the generic devfreq cooling mechanism through
156a76caf55SØrjan Eide	  frequency reduction for devices using devfreq.
157a76caf55SØrjan Eide
158a76caf55SØrjan Eide	  This will throttle the device by limiting the maximum allowed DVFS
159a76caf55SØrjan Eide	  frequency corresponding to the cooling level.
160a76caf55SØrjan Eide
161a76caf55SØrjan Eide	  In order to use the power extensions of the cooling device,
162a76caf55SØrjan Eide	  devfreq should use the simple_ondemand governor.
163a76caf55SØrjan Eide
164f9df89d8SEduardo Valentin	  If you want this support, you should say Y here.
165f9df89d8SEduardo Valentin
166e6e238c3SAmit Daniel Kachhapconfig THERMAL_EMULATION
167e6e238c3SAmit Daniel Kachhap	bool "Thermal emulation mode support"
168e6e238c3SAmit Daniel Kachhap	help
169e6e238c3SAmit Daniel Kachhap	  Enable this option to make a emul_temp sysfs node in thermal zone
170e6e238c3SAmit Daniel Kachhap	  directory to support temperature emulation. With emulation sysfs node,
171e6e238c3SAmit Daniel Kachhap	  user can manually input temperature and test the different trip
172e6e238c3SAmit Daniel Kachhap	  threshold behaviour for simulation purpose.
173e6e238c3SAmit Daniel Kachhap
1748837295aSEduardo Valentin	  WARNING: Be careful while enabling this option on production systems,
1758837295aSEduardo Valentin	  because userland can easily disable the thermal policy by simply
1768837295aSEduardo Valentin	  flooding this sysfs node with low temperature values.
1778837295aSEduardo Valentin
1789a5238a9Skongxinweiconfig HISI_THERMAL
1799a5238a9Skongxinwei	tristate "Hisilicon thermal driver"
180f05f4821SLeo Yan	depends on ARCH_HISI || COMPILE_TEST
181bf82c350SKrzysztof Kozlowski	depends on HAS_IOMEM
182f05f4821SLeo Yan	depends on OF
183f05f4821SLeo Yan	default y
1849a5238a9Skongxinwei	help
1859a5238a9Skongxinwei	  Enable this to plug hisilicon's thermal sensor driver into the Linux
1869a5238a9Skongxinwei	  thermal framework. cpufreq is used as the cooling device to throttle
1879a5238a9Skongxinwei	  CPUs when the passive trip is crossed.
1889a5238a9Skongxinwei
189ca3de46bSShawn Guoconfig IMX_THERMAL
190ca3de46bSShawn Guo	tristate "Temperature sensor driver for Freescale i.MX SoCs"
191eea6a364SPeter Robinson	depends on (ARCH_MXC && CPU_THERMAL) || COMPILE_TEST
192ca3de46bSShawn Guo	depends on MFD_SYSCON
193ca3de46bSShawn Guo	depends on OF
194ca3de46bSShawn Guo	help
195ca3de46bSShawn Guo	  Support for Temperature Monitor (TEMPMON) found on Freescale i.MX SoCs.
196ca3de46bSShawn Guo	  It supports one critical trip point and one passive trip point.  The
197ca3de46bSShawn Guo	  cpufreq is used as the cooling device to throttle CPUs when the
198ca3de46bSShawn Guo	  passive trip is crossed.
199ca3de46bSShawn Guo
200ec4664b3SLaxman Dewanganconfig MAX77620_THERMAL
201ec4664b3SLaxman Dewangan	tristate "Temperature sensor driver for Maxim MAX77620 PMIC"
202ec4664b3SLaxman Dewangan	depends on MFD_MAX77620
203ec4664b3SLaxman Dewangan	depends on OF
204ec4664b3SLaxman Dewangan	help
205ec4664b3SLaxman Dewangan	  Support for die junction temperature warning alarm for Maxim
206ec4664b3SLaxman Dewangan	  Semiconductor PMIC MAX77620 device. Device generates two alarm
207ec4664b3SLaxman Dewangan	  interrupts when PMIC die temperature cross the threshold of
208ec4664b3SLaxman Dewangan	  120 degC and 140 degC.
209ec4664b3SLaxman Dewangan
21043528445SJia Hongtaoconfig QORIQ_THERMAL
21143528445SJia Hongtao	tristate "QorIQ Thermal Monitoring Unit"
21243528445SJia Hongtao	depends on THERMAL_OF
21343528445SJia Hongtao	depends on HAS_IOMEM
21443528445SJia Hongtao	help
21543528445SJia Hongtao	  Support for Thermal Monitoring Unit (TMU) found on QorIQ platforms.
21643528445SJia Hongtao	  It supports one critical trip point and one passive trip point. The
21743528445SJia Hongtao	  cpufreq is used as the cooling device to throttle CPUs when the
21843528445SJia Hongtao	  passive trip is crossed.
21943528445SJia Hongtao
22072e19897SZhang Ruiconfig SPEAR_THERMAL
2214d2f1794SArnd Bergmann	tristate "SPEAr thermal sensor driver"
222aa2937b7SEduardo Valentin	depends on PLAT_SPEAR || COMPILE_TEST
223bf82c350SKrzysztof Kozlowski	depends on HAS_IOMEM
22472e19897SZhang Rui	depends on OF
22572e19897SZhang Rui	help
22672e19897SZhang Rui	  Enable this to plug the SPEAr thermal sensor driver into the Linux
227a8227948SLuka Perkov	  thermal framework.
22872e19897SZhang Rui
229cbac8f63SCaesar Wangconfig ROCKCHIP_THERMAL
230cbac8f63SCaesar Wang	tristate "Rockchip thermal driver"
231444f9b00SEduardo Valentin	depends on ARCH_ROCKCHIP || COMPILE_TEST
232cbac8f63SCaesar Wang	depends on RESET_CONTROLLER
233bf82c350SKrzysztof Kozlowski	depends on HAS_IOMEM
234cbac8f63SCaesar Wang	help
235cbac8f63SCaesar Wang	  Rockchip thermal driver provides support for Temperature sensor
236cbac8f63SCaesar Wang	  ADC (TS-ADC) found on Rockchip SoCs. It supports one critical
237cbac8f63SCaesar Wang	  trip point. Cpufreq is used as the cooling device and will throttle
238cbac8f63SCaesar Wang	  CPUs when the Temperature crosses the passive trip point.
239cbac8f63SCaesar Wang
24072e19897SZhang Ruiconfig RCAR_THERMAL
24172e19897SZhang Rui	tristate "Renesas R-Car thermal driver"
2428255e4e2SSimon Horman	depends on ARCH_RENESAS || COMPILE_TEST
243d1c8b041SRichard Weinberger	depends on HAS_IOMEM
24472e19897SZhang Rui	help
24572e19897SZhang Rui	  Enable this to plug the R-Car thermal sensor driver into the Linux
246a8227948SLuka Perkov	  thermal framework.
24772e19897SZhang Rui
248564e73d2SWolfram Sangconfig RCAR_GEN3_THERMAL
249564e73d2SWolfram Sang	tristate "Renesas R-Car Gen3 thermal driver"
250564e73d2SWolfram Sang	depends on ARCH_RENESAS || COMPILE_TEST
251564e73d2SWolfram Sang	depends on HAS_IOMEM
252564e73d2SWolfram Sang	depends on OF
253564e73d2SWolfram Sang	help
254564e73d2SWolfram Sang	  Enable this to plug the R-Car Gen3 thermal sensor driver into the Linux
255564e73d2SWolfram Sang	  thermal framework.
256564e73d2SWolfram Sang
2577060aa36SNobuhiro Iwamatsuconfig KIRKWOOD_THERMAL
2587060aa36SNobuhiro Iwamatsu	tristate "Temperature sensor on Marvell Kirkwood SoCs"
2599c8aa959SEduardo Valentin	depends on MACH_KIRKWOOD || COMPILE_TEST
260bf82c350SKrzysztof Kozlowski	depends on HAS_IOMEM
2617060aa36SNobuhiro Iwamatsu	depends on OF
2627060aa36SNobuhiro Iwamatsu	help
2637060aa36SNobuhiro Iwamatsu	  Support for the Kirkwood thermal sensor driver into the Linux thermal
2647060aa36SNobuhiro Iwamatsu	  framework. Only kirkwood 88F6282 and 88F6283 have this sensor.
2657060aa36SNobuhiro Iwamatsu
26674ffa64cSAndrew Lunnconfig DOVE_THERMAL
26774ffa64cSAndrew Lunn	tristate "Temperature sensor on Marvell Dove SoCs"
26807fffd5cSEduardo Valentin	depends on ARCH_DOVE || MACH_DOVE || COMPILE_TEST
269bf82c350SKrzysztof Kozlowski	depends on HAS_IOMEM
27074ffa64cSAndrew Lunn	depends on OF
27174ffa64cSAndrew Lunn	help
27274ffa64cSAndrew Lunn	  Support for the Dove thermal sensor driver in the Linux thermal
27374ffa64cSAndrew Lunn	  framework.
27474ffa64cSAndrew Lunn
275aa1acb04Shongbo.zhangconfig DB8500_THERMAL
27626716ce1SArnd Bergmann	tristate "DB8500 thermal management"
27726716ce1SArnd Bergmann	depends on MFD_DB8500_PRCMU
278aa1acb04Shongbo.zhang	default y
279aa1acb04Shongbo.zhang	help
280aa1acb04Shongbo.zhang	  Adds DB8500 thermal management implementation according to the thermal
281aa1acb04Shongbo.zhang	  management framework. A thermal zone with several trip points will be
282aa1acb04Shongbo.zhang	  created. Cooling devices can be bound to the trip points to cool this
283aa1acb04Shongbo.zhang	  thermal zone if trip points reached.
284aa1acb04Shongbo.zhang
285fa0d654cSEzequiel Garciaconfig ARMADA_THERMAL
286fa0d654cSEzequiel Garcia	tristate "Armada 370/XP thermal management"
2871b158267SEduardo Valentin	depends on ARCH_MVEBU || COMPILE_TEST
288bf82c350SKrzysztof Kozlowski	depends on HAS_IOMEM
289fa0d654cSEzequiel Garcia	depends on OF
290fa0d654cSEzequiel Garcia	help
291fa0d654cSEzequiel Garcia	  Enable this option if you want to have support for thermal management
292fa0d654cSEzequiel Garcia	  controller present in Armada 370 and Armada XP SoC.
293fa0d654cSEzequiel Garcia
294aa1acb04Shongbo.zhangconfig DB8500_CPUFREQ_COOLING
295aa1acb04Shongbo.zhang	tristate "DB8500 cpufreq cooling"
296527860feSLuis de Bethencourt	depends on ARCH_U8500 || COMPILE_TEST
297bf82c350SKrzysztof Kozlowski	depends on HAS_IOMEM
298aa1acb04Shongbo.zhang	depends on CPU_THERMAL
299aa1acb04Shongbo.zhang	default y
300aa1acb04Shongbo.zhang	help
301aa1acb04Shongbo.zhang	  Adds DB8500 cpufreq cooling devices, and these cooling devices can be
302aa1acb04Shongbo.zhang	  bound to thermal zone trip points. When a trip point reached, the
303aa1acb04Shongbo.zhang	  bound cpufreq cooling device turns active to set CPU frequency low to
304aa1acb04Shongbo.zhang	  cool down the CPU.
30572e19897SZhang Rui
306*608567aaSSteve Twissconfig DA9062_THERMAL
307*608567aaSSteve Twiss	tristate "DA9062/DA9061 Dialog Semiconductor thermal driver"
308*608567aaSSteve Twiss	depends on MFD_DA9062 || COMPILE_TEST
309*608567aaSSteve Twiss	depends on OF
310*608567aaSSteve Twiss	help
311*608567aaSSteve Twiss	  Enable this for the Dialog Semiconductor thermal sensor driver.
312*608567aaSSteve Twiss	  This will report PMIC junction over-temperature for one thermal trip
313*608567aaSSteve Twiss	  zone.
314*608567aaSSteve Twiss	  Compatible with the DA9062 and DA9061 PMICs.
315*608567aaSSteve Twiss
316d6d71ee4SJacob Panconfig INTEL_POWERCLAMP
317d6d71ee4SJacob Pan	tristate "Intel PowerClamp idle injection driver"
318d6d71ee4SJacob Pan	depends on THERMAL
319d6d71ee4SJacob Pan	depends on X86
320d6d71ee4SJacob Pan	depends on CPU_SUP_INTEL
321d6d71ee4SJacob Pan	help
322d6d71ee4SJacob Pan	  Enable this to enable Intel PowerClamp idle injection driver. This
323d6d71ee4SJacob Pan	  enforce idle time which results in more package C-state residency. The
324d6d71ee4SJacob Pan	  user interface is exposed via generic thermal framework.
325d6d71ee4SJacob Pan
326f1a18a10SSrinivas Pandruvadaconfig X86_PKG_TEMP_THERMAL
327f1a18a10SSrinivas Pandruvada	tristate "X86 package temperature thermal driver"
328b3ba0206SRandy Dunlap	depends on X86_THERMAL_VECTOR
329f1a18a10SSrinivas Pandruvada	select THERMAL_GOV_USER_SPACE
33098cadf25SSrinivas Pandruvada	select THERMAL_WRITABLE_TRIPS
331f1a18a10SSrinivas Pandruvada	default m
332f1a18a10SSrinivas Pandruvada	help
333f1a18a10SSrinivas Pandruvada	  Enable this to register CPU digital sensor for package temperature as
334f1a18a10SSrinivas Pandruvada	  thermal zone. Each package will have its own thermal zone. There are
335f1a18a10SSrinivas Pandruvada	  two trip points which can be set by user to get notifications via thermal
336f1a18a10SSrinivas Pandruvada	  notification methods.
337f1a18a10SSrinivas Pandruvada
338ee073604SSrinivas Pandruvadaconfig INTEL_SOC_DTS_IOSF_CORE
339ee073604SSrinivas Pandruvada	tristate
340ee073604SSrinivas Pandruvada	depends on X86
341ee073604SSrinivas Pandruvada	select IOSF_MBI
342ee073604SSrinivas Pandruvada	help
343ee073604SSrinivas Pandruvada	  This is becoming a common feature for Intel SoCs to expose the additional
344ee073604SSrinivas Pandruvada	  digital temperature sensors (DTSs) using side band interface (IOSF). This
345ee073604SSrinivas Pandruvada	  implements the common set of helper functions to register, get temperature
346ee073604SSrinivas Pandruvada	  and get/set thresholds on DTSs.
347ee073604SSrinivas Pandruvada
348bc40b5e3SSrinivas Pandruvadaconfig INTEL_SOC_DTS_THERMAL
349bc40b5e3SSrinivas Pandruvada	tristate "Intel SoCs DTS thermal driver"
3503a2419f8SSrinivas Pandruvada	depends on X86
3513a2419f8SSrinivas Pandruvada	select INTEL_SOC_DTS_IOSF_CORE
35298cadf25SSrinivas Pandruvada	select THERMAL_WRITABLE_TRIPS
353bc40b5e3SSrinivas Pandruvada	help
354bc40b5e3SSrinivas Pandruvada	  Enable this to register Intel SoCs (e.g. Bay Trail) platform digital
355bc40b5e3SSrinivas Pandruvada	  temperature sensor (DTS). These SoCs have two additional DTSs in
356bc40b5e3SSrinivas Pandruvada	  addition to DTSs on CPU cores. Each DTS will be registered as a
357bc40b5e3SSrinivas Pandruvada	  thermal zone. There are two trip points. One of the trip point can
358bc40b5e3SSrinivas Pandruvada	  be set by user mode programs to get notifications via Linux thermal
359bc40b5e3SSrinivas Pandruvada	  notification methods.The other trip is a critical trip point, which
360bc40b5e3SSrinivas Pandruvada	  was set by the driver based on the TJ MAX temperature.
361bc40b5e3SSrinivas Pandruvada
3628c187693SOng, Boon Leongconfig INTEL_QUARK_DTS_THERMAL
3638c187693SOng, Boon Leong	tristate "Intel Quark DTS thermal driver"
3648c187693SOng, Boon Leong	depends on X86_INTEL_QUARK
3658c187693SOng, Boon Leong	help
3668c187693SOng, Boon Leong	  Enable this to register Intel Quark SoC (e.g. X1000) platform digital
3678c187693SOng, Boon Leong	  temperature sensor (DTS). For X1000 SoC, it has one on-die DTS.
3688c187693SOng, Boon Leong	  The DTS will be registered as a thermal zone. There are two trip points:
3698c187693SOng, Boon Leong	  hot & critical. The critical trip point default value is set by
3708c187693SOng, Boon Leong	  underlying BIOS/Firmware.
3718c187693SOng, Boon Leong
372a3c89334SAaron Lumenu "ACPI INT340X thermal drivers"
373a3c89334SAaron Lusource drivers/thermal/int340x_thermal/Kconfig
374a3c89334SAaron Luendmenu
37552b1c69dSJacob Pan
376b474303fSBin Gaoconfig INTEL_BXT_PMIC_THERMAL
377b474303fSBin Gao	tristate "Intel Broxton PMIC thermal driver"
378b474303fSBin Gao	depends on X86 && INTEL_SOC_PMIC && REGMAP
379b474303fSBin Gao	help
380b474303fSBin Gao	  Select this driver for Intel Broxton PMIC with ADC channels monitoring
381b474303fSBin Gao	  system temperature measurements and alerts.
382b474303fSBin Gao	  This driver is used for monitoring the ADC channels of PMIC and handles
383b474303fSBin Gao	  the alert trip point interrupts and notifies the thermal framework with
384b474303fSBin Gao	  the trip point and temperature details of the zone.
385b474303fSBin Gao
386d0a12625STushar Daveconfig INTEL_PCH_THERMAL
387d0a12625STushar Dave	tristate "Intel PCH Thermal Reporting Driver"
388d0a12625STushar Dave	depends on X86 && PCI
389d0a12625STushar Dave	help
390d0a12625STushar Dave	  Enable this to support thermal reporting on certain intel PCHs.
391d0a12625STushar Dave	  Thermal reporting device will provide temperature reading,
392d0a12625STushar Dave	  programmable trip points and other information.
393d0a12625STushar Dave
394a92db1c8SSascha Hauerconfig MTK_THERMAL
395a92db1c8SSascha Hauer	tristate "Temperature sensor driver for mediatek SoCs"
396a92db1c8SSascha Hauer	depends on ARCH_MEDIATEK || COMPILE_TEST
39774e5053cSEduardo Valentin	depends on HAS_IOMEM
39862e14f6fSRandy Dunlap	depends on NVMEM || NVMEM=n
399a6f4850dSJohannes Berg	depends on RESET_CONTROLLER
400a92db1c8SSascha Hauer	default y
401a92db1c8SSascha Hauer	help
402a92db1c8SSascha Hauer	  Enable this option if you want to have support for thermal management
403a92db1c8SSascha Hauer	  controller present in Mediatek SoCs
404a92db1c8SSascha Hauer
405a94cb7eeSRafał Miłeckimenu "Broadcom thermal drivers"
406a94cb7eeSRafał Miłeckidepends on ARCH_BCM || COMPILE_TEST
407a94cb7eeSRafał Miłeckisource "drivers/thermal/broadcom/Kconfig"
408a94cb7eeSRafał Miłeckiendmenu
409a94cb7eeSRafał Miłecki
410eb982001SEduardo Valentinmenu "Texas Instruments thermal drivers"
411ec2feb47SEduardo Valentindepends on ARCH_HAS_BANDGAP || COMPILE_TEST
412bf82c350SKrzysztof Kozlowskidepends on HAS_IOMEM
413eb982001SEduardo Valentinsource "drivers/thermal/ti-soc-thermal/Kconfig"
414eb982001SEduardo Valentinendmenu
415f157f596SZhang Rui
416c6821378SAmit Daniel Kachhapmenu "Samsung thermal drivers"
4172bf42735SEduardo Valentindepends on ARCH_EXYNOS || COMPILE_TEST
418c6821378SAmit Daniel Kachhapsource "drivers/thermal/samsung/Kconfig"
419c6821378SAmit Daniel Kachhapendmenu
420c6821378SAmit Daniel Kachhap
42160aef7ceSLee Jonesmenu "STMicroelectronics thermal drivers"
42260aef7ceSLee Jonesdepends on ARCH_STI && OF
42360aef7ceSLee Jonessource "drivers/thermal/st/Kconfig"
42460aef7ceSLee Jonesendmenu
42560aef7ceSLee Jones
4260b58c08bSMarc Gonzalezconfig TANGO_THERMAL
4270b58c08bSMarc Gonzalez	tristate "Tango thermal management"
4280b58c08bSMarc Gonzalez	depends on ARCH_TANGO || COMPILE_TEST
4290b58c08bSMarc Gonzalez	help
4300b58c08bSMarc Gonzalez	  Enable the Tango thermal driver, which supports the primitive
4310b58c08bSMarc Gonzalez	  temperature sensor embedded in Tango chips since the SMP8758.
4320b58c08bSMarc Gonzalez	  This sensor only generates a 1-bit signal to indicate whether
4330b58c08bSMarc Gonzalez	  the die temperature exceeds a programmable threshold.
4340b58c08bSMarc Gonzalez
435a4dff94fSWei Nisource "drivers/thermal/tegra/Kconfig"
436a4dff94fSWei Ni
437c610afaaSIvan T. Ivanovconfig QCOM_SPMI_TEMP_ALARM
438c610afaaSIvan T. Ivanov	tristate "Qualcomm SPMI PMIC Temperature Alarm"
439e4217468SArnd Bergmann	depends on OF && SPMI && IIO
440c610afaaSIvan T. Ivanov	select REGMAP_SPMI
441c610afaaSIvan T. Ivanov	help
442c610afaaSIvan T. Ivanov	  This enables a thermal sysfs driver for Qualcomm plug-and-play (QPNP)
443c610afaaSIvan T. Ivanov	  PMIC devices. It shows up in sysfs as a thermal sensor with multiple
444c610afaaSIvan T. Ivanov	  trip points. The temperature reported by the thermal sensor reflects the
445c610afaaSIvan T. Ivanov	  real time die temperature if an ADC is present or an estimate of the
446c610afaaSIvan T. Ivanov	  temperature based upon the over temperature stage value.
447c610afaaSIvan T. Ivanov
448b3aef78fSLaxman Dewanganconfig GENERIC_ADC_THERMAL
449b3aef78fSLaxman Dewangan	tristate "Generic ADC based thermal sensor"
450b3aef78fSLaxman Dewangan	depends on IIO
451b3aef78fSLaxman Dewangan	help
452b3aef78fSLaxman Dewangan	  This enabled a thermal sysfs driver for the temperature sensor
453b3aef78fSLaxman Dewangan	  which is connected to the General Purpose ADC. The ADC channel
454b3aef78fSLaxman Dewangan	  is read via IIO framework and the channel information is provided
455b3aef78fSLaxman Dewangan	  to this driver. This driver reports the temperature by reading ADC
456b3aef78fSLaxman Dewangan	  channel and converts it to temperature based on lookup table.
457b3aef78fSLaxman Dewangan
4589066073cSRajendra Nayakmenu "Qualcomm thermal drivers"
4599066073cSRajendra Nayakdepends on (ARCH_QCOM && OF) || COMPILE_TEST
4609066073cSRajendra Nayaksource "drivers/thermal/qcom/Kconfig"
4619066073cSRajendra Nayakendmenu
4629066073cSRajendra Nayak
46350fdd36fSBaoyou Xieconfig ZX2967_THERMAL
46450fdd36fSBaoyou Xie	tristate "Thermal sensors on zx2967 SoC"
46550fdd36fSBaoyou Xie	depends on ARCH_ZX || COMPILE_TEST
46650fdd36fSBaoyou Xie	help
46750fdd36fSBaoyou Xie	  Enable the zx2967 thermal sensors driver, which supports
46850fdd36fSBaoyou Xie	  the primitive temperature sensor embedded in zx2967 SoCs.
46950fdd36fSBaoyou Xie	  This sensor generates the real time die temperature.
47050fdd36fSBaoyou Xie
471bcb7dd9eSStefan Wahrenconfig BCM2835_THERMAL
472bcb7dd9eSStefan Wahren	tristate "Thermal sensors on bcm2835 SoC"
473bcb7dd9eSStefan Wahren	depends on ARCH_BCM2835 || COMPILE_TEST
474bcb7dd9eSStefan Wahren	depends on HAS_IOMEM
475bcb7dd9eSStefan Wahren	depends on THERMAL_OF
476bcb7dd9eSStefan Wahren	help
477bcb7dd9eSStefan Wahren	  Support for thermal sensors on Broadcom bcm2835 SoCs.
478bcb7dd9eSStefan Wahren
47972e19897SZhang Ruiendif
480