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 205b8583d3SDaniel Lezcanoconfig THERMAL_NETLINK 215b8583d3SDaniel Lezcano bool "Thermal netlink management" 225b8583d3SDaniel Lezcano depends on NET 235b8583d3SDaniel Lezcano help 245b8583d3SDaniel Lezcano The thermal framework has a netlink interface to do thermal 255b8583d3SDaniel Lezcano zones discovery, temperature readings and events such as 265b8583d3SDaniel Lezcano trip point crossed, cooling device update or governor 275b8583d3SDaniel Lezcano change. It is recommended to enable the feature. 285b8583d3SDaniel Lezcano 298ea22951SViresh Kumarconfig THERMAL_STATISTICS 308ea22951SViresh Kumar bool "Thermal state transition statistics" 318ea22951SViresh Kumar help 328ea22951SViresh Kumar Export thermal state transition statistics information through sysfs. 338ea22951SViresh Kumar 348ea22951SViresh Kumar If in doubt, say N. 358ea22951SViresh Kumar 36*755113d7SDaniel Lezcanoconfig THERMAL_DEBUGFS 37*755113d7SDaniel Lezcano bool "Thermal subsystem debug support" 38*755113d7SDaniel Lezcano depends on DEBUG_FS 39*755113d7SDaniel Lezcano help 40*755113d7SDaniel Lezcano Say Y to allow the thermal subsystem to collect diagnostic 41*755113d7SDaniel Lezcano information that can be accessed via debugfs. 42*755113d7SDaniel Lezcano 43ef1d87e0SKeerthyconfig THERMAL_EMERGENCY_POWEROFF_DELAY_MS 44ef1d87e0SKeerthy int "Emergency poweroff delay in milli-seconds" 45ef1d87e0SKeerthy default 0 46ef1d87e0SKeerthy help 47ef1d87e0SKeerthy Thermal subsystem will issue a graceful shutdown when 48ef1d87e0SKeerthy critical temperatures are reached using orderly_poweroff(). In 49ef1d87e0SKeerthy case of failure of an orderly_poweroff(), the thermal emergency 50ef1d87e0SKeerthy poweroff kicks in after a delay has elapsed and shuts down the system. 51ef1d87e0SKeerthy This config is number of milliseconds to delay before emergency 52ef1d87e0SKeerthy poweroff kicks in. Similarly to the critical trip point, 53ef1d87e0SKeerthy the delay should be carefully profiled so as to give adequate 54ef1d87e0SKeerthy time for orderly_poweroff() to finish on regular execution. 55ef1d87e0SKeerthy If set to 0 emergency poweroff will not be supported. 56ef1d87e0SKeerthy 57ef1d87e0SKeerthy In doubt, leave as 0. 58ef1d87e0SKeerthy 5916d75239SRene Hermanconfig THERMAL_HWMON 60ab92402aSJean Delvare bool 610dd88793SEduardo Valentin prompt "Expose thermal sensors as hwmon device" 6216d75239SRene Herman depends on HWMON=y || HWMON=THERMAL 63ab92402aSJean Delvare default y 640dd88793SEduardo Valentin help 650dd88793SEduardo Valentin In case a sensor is registered with the thermal 660dd88793SEduardo Valentin framework, this option will also register it 670dd88793SEduardo Valentin as a hwmon. The sensor will then have the common 680dd88793SEduardo Valentin hwmon sysfs interface. 690dd88793SEduardo Valentin 700dd88793SEduardo Valentin Say 'Y' here if you want all thermal sensors to 710dd88793SEduardo Valentin have hwmon sysfs interface too. 726a92c366SVincenzo Frascino 734e5e4705SEduardo Valentinconfig THERMAL_OF 744e5e4705SEduardo Valentin bool 754e5e4705SEduardo Valentin prompt "APIs to parse thermal data out of device tree" 764e5e4705SEduardo Valentin depends on OF 774e5e4705SEduardo Valentin default y 784e5e4705SEduardo Valentin help 794e5e4705SEduardo Valentin This options provides helpers to add the support to 804e5e4705SEduardo Valentin read and parse thermal data definitions out of the 814e5e4705SEduardo Valentin device tree blob. 824e5e4705SEduardo Valentin 834e5e4705SEduardo Valentin Say 'Y' here if you need to build thermal infrastructure 844e5e4705SEduardo Valentin based on device tree. 854e5e4705SEduardo Valentin 867a0e3974SRafael J. Wysockiconfig THERMAL_ACPI 877a0e3974SRafael J. Wysocki depends on ACPI 887a0e3974SRafael J. Wysocki bool 897a0e3974SRafael J. Wysocki 9035e94644SPunit Agrawalconfig THERMAL_WRITABLE_TRIPS 9135e94644SPunit Agrawal bool "Enable writable trip points" 9235e94644SPunit Agrawal help 9335e94644SPunit Agrawal This option allows the system integrator to choose whether 9435e94644SPunit Agrawal trip temperatures can be changed from userspace. The 9535e94644SPunit Agrawal writable trips need to be specified when setting up the 9635e94644SPunit Agrawal thermal zone but the choice here takes precedence. 9735e94644SPunit Agrawal 9835e94644SPunit Agrawal Say 'Y' here if you would like to allow userspace tools to 9935e94644SPunit Agrawal change trip temperatures. 10035e94644SPunit Agrawal 101a56757afSDurgadoss Rchoice 102a56757afSDurgadoss R prompt "Default Thermal governor" 103a56757afSDurgadoss R default THERMAL_DEFAULT_GOV_STEP_WISE 104a56757afSDurgadoss R help 105a56757afSDurgadoss R This option sets which thermal governor shall be loaded at 106a56757afSDurgadoss R startup. If in doubt, select 'step_wise'. 107a56757afSDurgadoss R 108a56757afSDurgadoss Rconfig THERMAL_DEFAULT_GOV_STEP_WISE 109a56757afSDurgadoss R bool "step_wise" 1109d185d04SZhang Rui select THERMAL_GOV_STEP_WISE 111a56757afSDurgadoss R help 112a56757afSDurgadoss R Use the step_wise governor as default. This throttles the 113a56757afSDurgadoss R devices one step at a time. 114a56757afSDurgadoss R 115a56757afSDurgadoss Rconfig THERMAL_DEFAULT_GOV_FAIR_SHARE 116a56757afSDurgadoss R bool "fair_share" 1179d185d04SZhang Rui select THERMAL_GOV_FAIR_SHARE 118a56757afSDurgadoss R help 119a56757afSDurgadoss R Use the fair_share governor as default. This throttles the 120a56757afSDurgadoss R devices based on their 'contribution' to a zone. The 121a56757afSDurgadoss R contribution should be provided through platform data. 122a56757afSDurgadoss R 123a56757afSDurgadoss Rconfig THERMAL_DEFAULT_GOV_USER_SPACE 124a56757afSDurgadoss R bool "user_space" 1259d185d04SZhang Rui select THERMAL_GOV_USER_SPACE 126a56757afSDurgadoss R help 127fa1ef24aSDaniel Lezcano The Userspace governor allows to get trip point crossed 128fa1ef24aSDaniel Lezcano notification from the kernel via uevents. It is recommended 129fa1ef24aSDaniel Lezcano to use the netlink interface instead which gives richer 130fa1ef24aSDaniel Lezcano information about the thermal framework events. 13172e19897SZhang Rui 1326b775e87SJavi Merinoconfig THERMAL_DEFAULT_GOV_POWER_ALLOCATOR 1336b775e87SJavi Merino bool "power_allocator" 13450260614SYueHaibing depends on THERMAL_GOV_POWER_ALLOCATOR 1356b775e87SJavi Merino help 1366b775e87SJavi Merino Select this if you want to control temperature based on 1376b775e87SJavi Merino system and device power allocation. This governor can only 1386b775e87SJavi Merino operate on cooling devices that implement the power API. 1396b775e87SJavi Merino 14004bf1fe4SThierry Redingconfig THERMAL_DEFAULT_GOV_BANG_BANG 14104bf1fe4SThierry Reding bool "bang_bang" 14204bf1fe4SThierry Reding depends on THERMAL_GOV_BANG_BANG 14304bf1fe4SThierry Reding help 14404bf1fe4SThierry Reding Use the bang_bang governor as default. This throttles the 14504bf1fe4SThierry Reding devices one step at the time, taking into account the trip 14604bf1fe4SThierry Reding point hysteresis. 14704bf1fe4SThierry Reding 148a56757afSDurgadoss Rendchoice 14972e19897SZhang Rui 1509d185d04SZhang Ruiconfig THERMAL_GOV_FAIR_SHARE 15172e19897SZhang Rui bool "Fair-share thermal governor" 15272e19897SZhang Rui help 15372e19897SZhang Rui Enable this to manage platform thermals using fair-share governor. 15472e19897SZhang Rui 1559d185d04SZhang Ruiconfig THERMAL_GOV_STEP_WISE 15672e19897SZhang Rui bool "Step_wise thermal governor" 15772e19897SZhang Rui help 15872e19897SZhang Rui Enable this to manage platform thermals using a simple linear 159a8227948SLuka Perkov governor. 16072e19897SZhang Rui 161e4dbf98fSPeter Feuererconfig THERMAL_GOV_BANG_BANG 162e4dbf98fSPeter Feuerer bool "Bang Bang thermal governor" 163e4dbf98fSPeter Feuerer default n 164e4dbf98fSPeter Feuerer help 165e4dbf98fSPeter Feuerer Enable this to manage platform thermals using bang bang governor. 166e4dbf98fSPeter Feuerer 167e4dbf98fSPeter Feuerer Say 'Y' here if you want to use two point temperature regulation 168e4dbf98fSPeter Feuerer used for fans without throttling. Some fan drivers depend on this 169e4dbf98fSPeter Feuerer governor to be enabled (e.g. acerhdf). 170e4dbf98fSPeter Feuerer 1719d185d04SZhang Ruiconfig THERMAL_GOV_USER_SPACE 17272e19897SZhang Rui bool "User_space thermal governor" 17372e19897SZhang Rui help 17472e19897SZhang Rui Enable this to let the user space manage the platform thermals. 17572e19897SZhang Rui 1766b775e87SJavi Merinoconfig THERMAL_GOV_POWER_ALLOCATOR 1776b775e87SJavi Merino bool "Power allocator thermal governor" 178a4e893e8SQuentin Perret depends on ENERGY_MODEL 1796b775e87SJavi Merino help 1806b775e87SJavi Merino Enable this to manage platform thermals by dynamically 1816b775e87SJavi Merino allocating and limiting power to devices. 1826b775e87SJavi Merino 18372e19897SZhang Ruiconfig CPU_THERMAL 1842e31c856SDaniel Lezcano bool "Generic cpu cooling support" 18539d99cffSEduardo Valentin depends on THERMAL_OF 18672e19897SZhang Rui help 1872b586feaSDaniel Lezcano Enable the CPU cooling features. If the system has no active 1882b586feaSDaniel Lezcano cooling device available, this option allows to use the CPU 1892b586feaSDaniel Lezcano as a cooling device. 1902b586feaSDaniel Lezcano 1912b586feaSDaniel Lezcanoif CPU_THERMAL 1922b586feaSDaniel Lezcano 1932b586feaSDaniel Lezcanoconfig CPU_FREQ_THERMAL 1942b586feaSDaniel Lezcano bool "CPU frequency cooling device" 1952b586feaSDaniel Lezcano depends on CPU_FREQ 1962b586feaSDaniel Lezcano default y 1972b586feaSDaniel Lezcano help 19872e19897SZhang Rui This implements the generic cpu cooling mechanism through frequency 199f7188b3dSEduardo Valentin reduction. An ACPI version of this already exists 200f7188b3dSEduardo Valentin (drivers/acpi/processor_thermal.c). 20172e19897SZhang Rui This will be useful for platforms using the generic thermal interface 20272e19897SZhang Rui and not the ACPI interface. 203f7188b3dSEduardo Valentin 204a4c428e5SDaniel Lezcanoconfig CPU_IDLE_THERMAL 205a4c428e5SDaniel Lezcano bool "CPU idle cooling device" 206a4c428e5SDaniel Lezcano depends on IDLE_INJECT 207a4c428e5SDaniel Lezcano help 208a4c428e5SDaniel Lezcano This implements the CPU cooling mechanism through 209a4c428e5SDaniel Lezcano idle injection. This will throttle the CPU by injecting 210a4c428e5SDaniel Lezcano idle cycle. 2112b586feaSDaniel Lezcanoendif 21272e19897SZhang Rui 213a76caf55SØrjan Eideconfig DEVFREQ_THERMAL 214a76caf55SØrjan Eide bool "Generic device cooling support" 215a76caf55SØrjan Eide depends on PM_DEVFREQ 216a76caf55SØrjan Eide depends on PM_OPP 217a76caf55SØrjan Eide help 218a76caf55SØrjan Eide This implements the generic devfreq cooling mechanism through 219a76caf55SØrjan Eide frequency reduction for devices using devfreq. 220a76caf55SØrjan Eide 221a76caf55SØrjan Eide This will throttle the device by limiting the maximum allowed DVFS 222a76caf55SØrjan Eide frequency corresponding to the cooling level. 223a76caf55SØrjan Eide 224a76caf55SØrjan Eide In order to use the power extensions of the cooling device, 225a76caf55SØrjan Eide devfreq should use the simple_ondemand governor. 226a76caf55SØrjan Eide 227f9df89d8SEduardo Valentin If you want this support, you should say Y here. 228f9df89d8SEduardo Valentin 229e6e238c3SAmit Daniel Kachhapconfig THERMAL_EMULATION 230e6e238c3SAmit Daniel Kachhap bool "Thermal emulation mode support" 231e6e238c3SAmit Daniel Kachhap help 232e6e238c3SAmit Daniel Kachhap Enable this option to make a emul_temp sysfs node in thermal zone 233e6e238c3SAmit Daniel Kachhap directory to support temperature emulation. With emulation sysfs node, 234e6e238c3SAmit Daniel Kachhap user can manually input temperature and test the different trip 235e6e238c3SAmit Daniel Kachhap threshold behaviour for simulation purpose. 236e6e238c3SAmit Daniel Kachhap 2378837295aSEduardo Valentin WARNING: Be careful while enabling this option on production systems, 2388837295aSEduardo Valentin because userland can easily disable the thermal policy by simply 2398837295aSEduardo Valentin flooding this sysfs node with low temperature values. 2408837295aSEduardo Valentin 24171aa3693STalel Shenharconfig THERMAL_MMIO 24271aa3693STalel Shenhar tristate "Generic Thermal MMIO driver" 2438df4ef3eSJean Delvare depends on OF 2446ec8070bSTalel Shenhar depends on HAS_IOMEM 24571aa3693STalel Shenhar help 24671aa3693STalel Shenhar This option enables the generic thermal MMIO driver that will use 24771aa3693STalel Shenhar memory-mapped reads to get the temperature. Any HW/System that 24871aa3693STalel Shenhar allows temperature reading by a single memory-mapped reading, be it 24971aa3693STalel Shenhar register or shared memory, is a potential candidate to work with this 25071aa3693STalel Shenhar driver. 25171aa3693STalel Shenhar 2529a5238a9Skongxinweiconfig HISI_THERMAL 2539a5238a9Skongxinwei tristate "Hisilicon thermal driver" 254f05f4821SLeo Yan depends on ARCH_HISI || COMPILE_TEST 255bf82c350SKrzysztof Kozlowski depends on HAS_IOMEM 256f05f4821SLeo Yan depends on OF 257f05f4821SLeo Yan default y 2589a5238a9Skongxinwei help 2599a5238a9Skongxinwei Enable this to plug hisilicon's thermal sensor driver into the Linux 2609a5238a9Skongxinwei thermal framework. cpufreq is used as the cooling device to throttle 2619a5238a9Skongxinwei CPUs when the passive trip is crossed. 2629a5238a9Skongxinwei 263ca3de46bSShawn Guoconfig IMX_THERMAL 264ca3de46bSShawn Guo tristate "Temperature sensor driver for Freescale i.MX SoCs" 265c589c566SAnson Huang depends on ARCH_MXC || COMPILE_TEST 266531fcdebSArnd Bergmann depends on NVMEM || !NVMEM 267ca3de46bSShawn Guo depends on MFD_SYSCON 268ca3de46bSShawn Guo depends on OF 269ca3de46bSShawn Guo help 270ca3de46bSShawn Guo Support for Temperature Monitor (TEMPMON) found on Freescale i.MX SoCs. 271ca3de46bSShawn Guo It supports one critical trip point and one passive trip point. The 272ca3de46bSShawn Guo cpufreq is used as the cooling device to throttle CPUs when the 273ca3de46bSShawn Guo passive trip is crossed. 274ca3de46bSShawn Guo 275e20db70dSAnson Huangconfig IMX_SC_THERMAL 276e20db70dSAnson Huang tristate "Temperature sensor driver for NXP i.MX SoCs with System Controller" 277ef502fc1SAnson Huang depends on IMX_SCU 278e20db70dSAnson Huang depends on OF 279e20db70dSAnson Huang help 280e20db70dSAnson Huang Support for Temperature Monitor (TEMPMON) found on NXP i.MX SoCs with 281e20db70dSAnson Huang system controller inside, Linux kernel has to communicate with system 282e20db70dSAnson Huang controller via MU (message unit) IPC to get temperature from thermal 283e20db70dSAnson Huang sensor. It supports one critical trip point and one 284e20db70dSAnson Huang passive trip point for each thermal sensor. 285e20db70dSAnson Huang 2865eed800aSAnson Huangconfig IMX8MM_THERMAL 2875eed800aSAnson Huang tristate "Temperature sensor driver for Freescale i.MX8MM SoC" 28852cbc58bSAnson Huang depends on ARCH_MXC || COMPILE_TEST 2895eed800aSAnson Huang depends on OF 2905eed800aSAnson Huang help 2915eed800aSAnson Huang Support for Thermal Monitoring Unit (TMU) found on Freescale i.MX8MM SoC. 2925eed800aSAnson Huang It supports one critical trip point and one passive trip point. The 2935eed800aSAnson Huang cpufreq is used as the cooling device to throttle CPUs when the passive 2945eed800aSAnson Huang trip is crossed. 2955eed800aSAnson Huang 29648b2bce8SKeerthyconfig K3_THERMAL 29748b2bce8SKeerthy tristate "Texas Instruments K3 thermal support" 29848b2bce8SKeerthy depends on ARCH_K3 || COMPILE_TEST 29948b2bce8SKeerthy help 30048b2bce8SKeerthy If you say yes here you get thermal support for the Texas Instruments 30148b2bce8SKeerthy K3 SoC family. The current chip supported is: 30248b2bce8SKeerthy - AM654 30348b2bce8SKeerthy 30448b2bce8SKeerthy This includes temperature reading functionality. 30548b2bce8SKeerthy 306ec4664b3SLaxman Dewanganconfig MAX77620_THERMAL 307ec4664b3SLaxman Dewangan tristate "Temperature sensor driver for Maxim MAX77620 PMIC" 308ec4664b3SLaxman Dewangan depends on MFD_MAX77620 309ec4664b3SLaxman Dewangan depends on OF 310ec4664b3SLaxman Dewangan help 311ec4664b3SLaxman Dewangan Support for die junction temperature warning alarm for Maxim 312ec4664b3SLaxman Dewangan Semiconductor PMIC MAX77620 device. Device generates two alarm 313ec4664b3SLaxman Dewangan interrupts when PMIC die temperature cross the threshold of 314ec4664b3SLaxman Dewangan 120 degC and 140 degC. 315ec4664b3SLaxman Dewangan 31643528445SJia Hongtaoconfig QORIQ_THERMAL 31743528445SJia Hongtao tristate "QorIQ Thermal Monitoring Unit" 3181ab20c0eSGeert Uytterhoeven depends on THERMAL_OF && HAS_IOMEM 3191ab20c0eSGeert Uytterhoeven depends on PPC_E500MC || SOC_LS1021A || ARCH_LAYERSCAPE || (ARCH_MXC && ARM64) || COMPILE_TEST 320cbe259fdSYuantian Tang select REGMAP_MMIO 32143528445SJia Hongtao help 32243528445SJia Hongtao Support for Thermal Monitoring Unit (TMU) found on QorIQ platforms. 32343528445SJia Hongtao It supports one critical trip point and one passive trip point. The 32443528445SJia Hongtao cpufreq is used as the cooling device to throttle CPUs when the 32543528445SJia Hongtao passive trip is crossed. 32643528445SJia Hongtao 32772e19897SZhang Ruiconfig SPEAR_THERMAL 3284d2f1794SArnd Bergmann tristate "SPEAr thermal sensor driver" 329aa2937b7SEduardo Valentin depends on PLAT_SPEAR || COMPILE_TEST 330bf82c350SKrzysztof Kozlowski depends on HAS_IOMEM 33172e19897SZhang Rui depends on OF 33272e19897SZhang Rui help 33372e19897SZhang Rui Enable this to plug the SPEAr thermal sensor driver into the Linux 334a8227948SLuka Perkov thermal framework. 33572e19897SZhang Rui 336dccc5c3bSYangtao Liconfig SUN8I_THERMAL 337dccc5c3bSYangtao Li tristate "Allwinner sun8i thermal driver" 338dccc5c3bSYangtao Li depends on ARCH_SUNXI || COMPILE_TEST 339dccc5c3bSYangtao Li depends on HAS_IOMEM 340dccc5c3bSYangtao Li depends on NVMEM 341dccc5c3bSYangtao Li depends on OF 342dccc5c3bSYangtao Li depends on RESET_CONTROLLER 343dccc5c3bSYangtao Li help 344dccc5c3bSYangtao Li Support for the sun8i thermal sensor driver into the Linux thermal 345dccc5c3bSYangtao Li framework. 346dccc5c3bSYangtao Li 347dccc5c3bSYangtao Li To compile this driver as a module, choose M here: the 348dccc5c3bSYangtao Li module will be called sun8i-thermal. 349dccc5c3bSYangtao Li 350cbac8f63SCaesar Wangconfig ROCKCHIP_THERMAL 351cbac8f63SCaesar Wang tristate "Rockchip thermal driver" 352444f9b00SEduardo Valentin depends on ARCH_ROCKCHIP || COMPILE_TEST 353cbac8f63SCaesar Wang depends on RESET_CONTROLLER 354bf82c350SKrzysztof Kozlowski depends on HAS_IOMEM 355cbac8f63SCaesar Wang help 356cbac8f63SCaesar Wang Rockchip thermal driver provides support for Temperature sensor 357cbac8f63SCaesar Wang ADC (TS-ADC) found on Rockchip SoCs. It supports one critical 358cbac8f63SCaesar Wang trip point. Cpufreq is used as the cooling device and will throttle 359cbac8f63SCaesar Wang CPUs when the Temperature crosses the passive trip point. 360cbac8f63SCaesar Wang 36172e19897SZhang Ruiconfig RCAR_THERMAL 36272e19897SZhang Rui tristate "Renesas R-Car thermal driver" 3638255e4e2SSimon Horman depends on ARCH_RENESAS || COMPILE_TEST 364d1c8b041SRichard Weinberger depends on HAS_IOMEM 36572e19897SZhang Rui help 36672e19897SZhang Rui Enable this to plug the R-Car thermal sensor driver into the Linux 367a8227948SLuka Perkov thermal framework. 36872e19897SZhang Rui 369564e73d2SWolfram Sangconfig RCAR_GEN3_THERMAL 370bc501418SLad Prabhakar tristate "Renesas R-Car Gen3 and RZ/G2 thermal driver" 371564e73d2SWolfram Sang depends on ARCH_RENESAS || COMPILE_TEST 372564e73d2SWolfram Sang depends on HAS_IOMEM 373564e73d2SWolfram Sang depends on OF 374564e73d2SWolfram Sang help 375bc501418SLad Prabhakar Enable this to plug the R-Car Gen3 or RZ/G2 thermal sensor driver into 376bc501418SLad Prabhakar the Linux thermal framework. 377564e73d2SWolfram Sang 378673c68bdSBiju Dasconfig RZG2L_THERMAL 379673c68bdSBiju Das tristate "Renesas RZ/G2L thermal driver" 380673c68bdSBiju Das depends on ARCH_RENESAS || COMPILE_TEST 381673c68bdSBiju Das depends on HAS_IOMEM 382673c68bdSBiju Das depends on OF 383673c68bdSBiju Das help 384673c68bdSBiju Das Enable this to plug the RZ/G2L thermal sensor driver into the Linux 385673c68bdSBiju Das thermal framework. 386673c68bdSBiju Das 3877060aa36SNobuhiro Iwamatsuconfig KIRKWOOD_THERMAL 3887060aa36SNobuhiro Iwamatsu tristate "Temperature sensor on Marvell Kirkwood SoCs" 3899c8aa959SEduardo Valentin depends on MACH_KIRKWOOD || COMPILE_TEST 390bf82c350SKrzysztof Kozlowski depends on HAS_IOMEM 3917060aa36SNobuhiro Iwamatsu depends on OF 3927060aa36SNobuhiro Iwamatsu help 3937060aa36SNobuhiro Iwamatsu Support for the Kirkwood thermal sensor driver into the Linux thermal 3947060aa36SNobuhiro Iwamatsu framework. Only kirkwood 88F6282 and 88F6283 have this sensor. 3957060aa36SNobuhiro Iwamatsu 39674ffa64cSAndrew Lunnconfig DOVE_THERMAL 39774ffa64cSAndrew Lunn tristate "Temperature sensor on Marvell Dove SoCs" 39807fffd5cSEduardo Valentin depends on ARCH_DOVE || MACH_DOVE || COMPILE_TEST 399bf82c350SKrzysztof Kozlowski depends on HAS_IOMEM 40074ffa64cSAndrew Lunn depends on OF 40174ffa64cSAndrew Lunn help 40274ffa64cSAndrew Lunn Support for the Dove thermal sensor driver in the Linux thermal 40374ffa64cSAndrew Lunn framework. 40474ffa64cSAndrew Lunn 405aa1acb04Shongbo.zhangconfig DB8500_THERMAL 40626716ce1SArnd Bergmann tristate "DB8500 thermal management" 407cb063a83SLinus Walleij depends on MFD_DB8500_PRCMU && OF 408aa1acb04Shongbo.zhang default y 409aa1acb04Shongbo.zhang help 410aa1acb04Shongbo.zhang Adds DB8500 thermal management implementation according to the thermal 411aa1acb04Shongbo.zhang management framework. A thermal zone with several trip points will be 412aa1acb04Shongbo.zhang created. Cooling devices can be bound to the trip points to cool this 413aa1acb04Shongbo.zhang thermal zone if trip points reached. 414aa1acb04Shongbo.zhang 415fa0d654cSEzequiel Garciaconfig ARMADA_THERMAL 416a9d58a1aSMiquel Raynal tristate "Marvell EBU Armada SoCs thermal management" 4171b158267SEduardo Valentin depends on ARCH_MVEBU || COMPILE_TEST 418bf82c350SKrzysztof Kozlowski depends on HAS_IOMEM 419fa0d654cSEzequiel Garcia depends on OF 420fa0d654cSEzequiel Garcia help 421fa0d654cSEzequiel Garcia Enable this option if you want to have support for thermal management 422a9d58a1aSMiquel Raynal controller present in Marvell EBU Armada SoCs (370,375,XP,38x,7K,8K). 423fa0d654cSEzequiel Garcia 424608567aaSSteve Twissconfig DA9062_THERMAL 425608567aaSSteve Twiss tristate "DA9062/DA9061 Dialog Semiconductor thermal driver" 426608567aaSSteve Twiss depends on MFD_DA9062 || COMPILE_TEST 427608567aaSSteve Twiss depends on OF 428608567aaSSteve Twiss help 429608567aaSSteve Twiss Enable this for the Dialog Semiconductor thermal sensor driver. 430608567aaSSteve Twiss This will report PMIC junction over-temperature for one thermal trip 431608567aaSSteve Twiss zone. 432608567aaSSteve Twiss Compatible with the DA9062 and DA9061 PMICs. 433608567aaSSteve Twiss 434fad399ebSBalsam CHIHImenu "Mediatek thermal drivers" 435a92db1c8SSascha Hauerdepends on ARCH_MEDIATEK || COMPILE_TEST 436fad399ebSBalsam CHIHIsource "drivers/thermal/mediatek/Kconfig" 437fad399ebSBalsam CHIHIendmenu 438a92db1c8SSascha Hauer 439421eda10SGuillaume La Roqueconfig AMLOGIC_THERMAL 440421eda10SGuillaume La Roque tristate "Amlogic Thermal Support" 441421eda10SGuillaume La Roque default ARCH_MESON 442421eda10SGuillaume La Roque depends on OF && ARCH_MESON 443421eda10SGuillaume La Roque help 444421eda10SGuillaume La Roque If you say yes here you get support for Amlogic Thermal 445421eda10SGuillaume La Roque for G12 SoC Family. 446421eda10SGuillaume La Roque 447421eda10SGuillaume La Roque This driver can also be built as a module. If so, the module will 448421eda10SGuillaume La Roque be called amlogic_thermal. 449421eda10SGuillaume La Roque 4503e8c4d31SAmit Kucheriamenu "Intel thermal drivers" 4513e8c4d31SAmit Kucheriadepends on X86 || X86_INTEL_QUARK || COMPILE_TEST 4523e8c4d31SAmit Kucheriasource "drivers/thermal/intel/Kconfig" 4533e8c4d31SAmit Kucheriaendmenu 4543e8c4d31SAmit Kucheria 455a94cb7eeSRafał Miłeckimenu "Broadcom thermal drivers" 456250e2110SPramod Kumardepends on ARCH_BCM || ARCH_BRCMSTB || ARCH_BCM2835 || ARCH_BCM_IPROC || \ 457250e2110SPramod Kumar COMPILE_TEST 458a94cb7eeSRafał Miłeckisource "drivers/thermal/broadcom/Kconfig" 459a94cb7eeSRafał Miłeckiendmenu 460a94cb7eeSRafał Miłecki 461eb982001SEduardo Valentinmenu "Texas Instruments thermal drivers" 462ec2feb47SEduardo Valentindepends on ARCH_HAS_BANDGAP || COMPILE_TEST 463bf82c350SKrzysztof Kozlowskidepends on HAS_IOMEM 464eb982001SEduardo Valentinsource "drivers/thermal/ti-soc-thermal/Kconfig" 465eb982001SEduardo Valentinendmenu 466f157f596SZhang Rui 467c6821378SAmit Daniel Kachhapmenu "Samsung thermal drivers" 4682bf42735SEduardo Valentindepends on ARCH_EXYNOS || COMPILE_TEST 469c6821378SAmit Daniel Kachhapsource "drivers/thermal/samsung/Kconfig" 470c6821378SAmit Daniel Kachhapendmenu 471c6821378SAmit Daniel Kachhap 47260aef7ceSLee Jonesmenu "STMicroelectronics thermal drivers" 4731d693155SDavid HERNANDEZ SANCHEZdepends on (ARCH_STI || ARCH_STM32) && OF 47460aef7ceSLee Jonessource "drivers/thermal/st/Kconfig" 47560aef7ceSLee Jonesendmenu 47660aef7ceSLee Jones 477a4dff94fSWei Nisource "drivers/thermal/tegra/Kconfig" 478a4dff94fSWei Ni 479b3aef78fSLaxman Dewanganconfig GENERIC_ADC_THERMAL 480b3aef78fSLaxman Dewangan tristate "Generic ADC based thermal sensor" 481b3aef78fSLaxman Dewangan depends on IIO 482b3aef78fSLaxman Dewangan help 483b3aef78fSLaxman Dewangan This enabled a thermal sysfs driver for the temperature sensor 484b3aef78fSLaxman Dewangan which is connected to the General Purpose ADC. The ADC channel 485b3aef78fSLaxman Dewangan is read via IIO framework and the channel information is provided 486b3aef78fSLaxman Dewangan to this driver. This driver reports the temperature by reading ADC 487b3aef78fSLaxman Dewangan channel and converts it to temperature based on lookup table. 488b3aef78fSLaxman Dewangan 4899066073cSRajendra Nayakmenu "Qualcomm thermal drivers" 4909066073cSRajendra Nayakdepends on (ARCH_QCOM && OF) || COMPILE_TEST 4919066073cSRajendra Nayaksource "drivers/thermal/qcom/Kconfig" 4929066073cSRajendra Nayakendmenu 4939066073cSRajendra Nayak 49486da4391SKunihiko Hayashiconfig UNIPHIER_THERMAL 49586da4391SKunihiko Hayashi tristate "Socionext UniPhier thermal driver" 49686da4391SKunihiko Hayashi depends on ARCH_UNIPHIER || COMPILE_TEST 49786da4391SKunihiko Hayashi depends on THERMAL_OF && MFD_SYSCON 49886da4391SKunihiko Hayashi help 49986da4391SKunihiko Hayashi Enable this to plug in UniPhier on-chip PVT thermal driver into the 50086da4391SKunihiko Hayashi thermal framework. The driver supports CPU thermal zone temperature 50186da4391SKunihiko Hayashi reporting and a couple of trip points. 502554fdbafSFreeman Liu 503554fdbafSFreeman Liuconfig SPRD_THERMAL 504554fdbafSFreeman Liu tristate "Temperature sensor on Spreadtrum SoCs" 505554fdbafSFreeman Liu depends on ARCH_SPRD || COMPILE_TEST 506554fdbafSFreeman Liu help 507554fdbafSFreeman Liu Support for the Spreadtrum thermal sensor driver in the Linux thermal 508554fdbafSFreeman Liu framework. 5095772717eSNeil Armstrong 5105772717eSNeil Armstrongconfig KHADAS_MCU_FAN_THERMAL 5115772717eSNeil Armstrong tristate "Khadas MCU controller FAN cooling support" 5128df4ef3eSJean Delvare depends on OF 5135772717eSNeil Armstrong depends on MFD_KHADAS_MCU 5145772717eSNeil Armstrong select MFD_CORE 5155772717eSNeil Armstrong select REGMAP 5165772717eSNeil Armstrong help 5175772717eSNeil Armstrong If you say yes here you get support for the FAN controlled 5185772717eSNeil Armstrong by the Microcontroller found on the Khadas VIM boards. 5195772717eSNeil Armstrong 520e7e3a7c3SYinbo Zhuconfig LOONGSON2_THERMAL 521e7e3a7c3SYinbo Zhu tristate "Loongson-2 SoC series thermal driver" 522e7e3a7c3SYinbo Zhu depends on LOONGARCH || COMPILE_TEST 523e7e3a7c3SYinbo Zhu depends on OF 524e7e3a7c3SYinbo Zhu help 525e7e3a7c3SYinbo Zhu Support for Thermal driver found on Loongson-2 SoC series platforms. 526e7e3a7c3SYinbo Zhu The thermal driver realizes get_temp and set_trips function, which 527e7e3a7c3SYinbo Zhu are used to obtain the temperature of the current node and set the 528e7e3a7c3SYinbo Zhu temperature range to trigger the interrupt. When the input temperature 529e7e3a7c3SYinbo Zhu is higher than the high temperature threshold or lower than the low 530e7e3a7c3SYinbo Zhu temperature threshold, the interrupt will occur. 531e7e3a7c3SYinbo Zhu 53272e19897SZhang Ruiendif 533