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