Thomas Gleixner | ec8f24b | 2019-05-19 13:07:45 +0100 | [diff] [blame] | 1 | # SPDX-License-Identifier: GPL-2.0-only |
Zhang Rui | 203d3d4 | 2008-01-17 15:51:08 +0800 | [diff] [blame] | 2 | # |
Linus Walleij | eb85046 | 2020-02-29 21:45:27 +0100 | [diff] [blame] | 3 | # Generic thermal drivers configuration |
Zhang Rui | 203d3d4 | 2008-01-17 15:51:08 +0800 | [diff] [blame] | 4 | # |
| 5 | |
| 6 | menuconfig THERMAL |
Linus Walleij | eb85046 | 2020-02-29 21:45:27 +0100 | [diff] [blame] | 7 | bool "Thermal drivers" |
Zhang Rui | 203d3d4 | 2008-01-17 15:51:08 +0800 | [diff] [blame] | 8 | help |
Linus Walleij | eb85046 | 2020-02-29 21:45:27 +0100 | [diff] [blame] | 9 | Thermal drivers offer a generic mechanism for |
Zhang Rui | 203d3d4 | 2008-01-17 15:51:08 +0800 | [diff] [blame] | 10 | thermal management. Usually it's made up of one or more thermal |
Linus Walleij | eb85046 | 2020-02-29 21:45:27 +0100 | [diff] [blame] | 11 | zones and cooling devices. |
Len Brown | 543a956 | 2008-02-07 16:55:08 -0500 | [diff] [blame] | 12 | Each thermal zone contains its own temperature, trip points, |
Linus Walleij | eb85046 | 2020-02-29 21:45:27 +0100 | [diff] [blame] | 13 | and cooling devices. |
| 14 | All platforms with ACPI or Open Firmware thermal support can use |
| 15 | this driver. |
Daniel Lezcano | 554b352 | 2019-04-02 18:12:44 +0200 | [diff] [blame] | 16 | If you want this support, you should say Y here. |
Rene Herman | 16d7523 | 2008-06-24 19:38:56 +0200 | [diff] [blame] | 17 | |
Zhang Rui | 72e1989 | 2012-11-15 09:16:20 +0800 | [diff] [blame] | 18 | if THERMAL |
| 19 | |
Viresh Kumar | 8ea2295 | 2018-04-02 16:26:25 +0530 | [diff] [blame] | 20 | config THERMAL_STATISTICS |
| 21 | bool "Thermal state transition statistics" |
| 22 | help |
| 23 | Export thermal state transition statistics information through sysfs. |
| 24 | |
| 25 | If in doubt, say N. |
| 26 | |
Keerthy | ef1d87e | 2017-04-18 09:59:59 +0530 | [diff] [blame] | 27 | config THERMAL_EMERGENCY_POWEROFF_DELAY_MS |
| 28 | int "Emergency poweroff delay in milli-seconds" |
Keerthy | ef1d87e | 2017-04-18 09:59:59 +0530 | [diff] [blame] | 29 | default 0 |
| 30 | help |
| 31 | Thermal subsystem will issue a graceful shutdown when |
| 32 | critical temperatures are reached using orderly_poweroff(). In |
| 33 | case of failure of an orderly_poweroff(), the thermal emergency |
| 34 | poweroff kicks in after a delay has elapsed and shuts down the system. |
| 35 | This config is number of milliseconds to delay before emergency |
| 36 | poweroff kicks in. Similarly to the critical trip point, |
| 37 | the delay should be carefully profiled so as to give adequate |
| 38 | time for orderly_poweroff() to finish on regular execution. |
| 39 | If set to 0 emergency poweroff will not be supported. |
| 40 | |
| 41 | In doubt, leave as 0. |
| 42 | |
Rene Herman | 16d7523 | 2008-06-24 19:38:56 +0200 | [diff] [blame] | 43 | config THERMAL_HWMON |
Jean Delvare | ab92402 | 2011-07-28 13:48:40 -0700 | [diff] [blame] | 44 | bool |
Eduardo Valentin | 0dd8879 | 2013-07-03 15:14:28 -0400 | [diff] [blame] | 45 | prompt "Expose thermal sensors as hwmon device" |
Rene Herman | 16d7523 | 2008-06-24 19:38:56 +0200 | [diff] [blame] | 46 | depends on HWMON=y || HWMON=THERMAL |
Jean Delvare | ab92402 | 2011-07-28 13:48:40 -0700 | [diff] [blame] | 47 | default y |
Eduardo Valentin | 0dd8879 | 2013-07-03 15:14:28 -0400 | [diff] [blame] | 48 | help |
| 49 | In case a sensor is registered with the thermal |
| 50 | framework, this option will also register it |
| 51 | as a hwmon. The sensor will then have the common |
| 52 | hwmon sysfs interface. |
| 53 | |
| 54 | Say 'Y' here if you want all thermal sensors to |
| 55 | have hwmon sysfs interface too. |
Vincenzo Frascino | 6a92c36 | 2012-03-21 12:55:03 -0700 | [diff] [blame] | 56 | |
Eduardo Valentin | 4e5e470 | 2013-07-03 15:35:39 -0400 | [diff] [blame] | 57 | config THERMAL_OF |
| 58 | bool |
| 59 | prompt "APIs to parse thermal data out of device tree" |
| 60 | depends on OF |
| 61 | default y |
| 62 | help |
| 63 | This options provides helpers to add the support to |
| 64 | read and parse thermal data definitions out of the |
| 65 | device tree blob. |
| 66 | |
| 67 | Say 'Y' here if you need to build thermal infrastructure |
| 68 | based on device tree. |
| 69 | |
Punit Agrawal | 35e9464 | 2015-03-03 10:43:03 +0000 | [diff] [blame] | 70 | config THERMAL_WRITABLE_TRIPS |
| 71 | bool "Enable writable trip points" |
| 72 | help |
| 73 | This option allows the system integrator to choose whether |
| 74 | trip temperatures can be changed from userspace. The |
| 75 | writable trips need to be specified when setting up the |
| 76 | thermal zone but the choice here takes precedence. |
| 77 | |
| 78 | Say 'Y' here if you would like to allow userspace tools to |
| 79 | change trip temperatures. |
| 80 | |
Durgadoss R | a56757a | 2012-09-21 14:32:24 +0530 | [diff] [blame] | 81 | choice |
| 82 | prompt "Default Thermal governor" |
Durgadoss R | a56757a | 2012-09-21 14:32:24 +0530 | [diff] [blame] | 83 | default THERMAL_DEFAULT_GOV_STEP_WISE |
| 84 | help |
| 85 | This option sets which thermal governor shall be loaded at |
| 86 | startup. If in doubt, select 'step_wise'. |
| 87 | |
| 88 | config THERMAL_DEFAULT_GOV_STEP_WISE |
| 89 | bool "step_wise" |
Zhang Rui | 9d185d0 | 2013-02-08 20:33:42 +0800 | [diff] [blame] | 90 | select THERMAL_GOV_STEP_WISE |
Durgadoss R | a56757a | 2012-09-21 14:32:24 +0530 | [diff] [blame] | 91 | help |
| 92 | Use the step_wise governor as default. This throttles the |
| 93 | devices one step at a time. |
| 94 | |
| 95 | config THERMAL_DEFAULT_GOV_FAIR_SHARE |
| 96 | bool "fair_share" |
Zhang Rui | 9d185d0 | 2013-02-08 20:33:42 +0800 | [diff] [blame] | 97 | select THERMAL_GOV_FAIR_SHARE |
Durgadoss R | a56757a | 2012-09-21 14:32:24 +0530 | [diff] [blame] | 98 | help |
| 99 | Use the fair_share governor as default. This throttles the |
| 100 | devices based on their 'contribution' to a zone. The |
| 101 | contribution should be provided through platform data. |
| 102 | |
| 103 | config THERMAL_DEFAULT_GOV_USER_SPACE |
| 104 | bool "user_space" |
Zhang Rui | 9d185d0 | 2013-02-08 20:33:42 +0800 | [diff] [blame] | 105 | select THERMAL_GOV_USER_SPACE |
Durgadoss R | a56757a | 2012-09-21 14:32:24 +0530 | [diff] [blame] | 106 | help |
| 107 | Select this if you want to let the user space manage the |
Regid Ichira | ece238f | 2013-09-09 00:58:53 +0300 | [diff] [blame] | 108 | platform thermals. |
Zhang Rui | 72e1989 | 2012-11-15 09:16:20 +0800 | [diff] [blame] | 109 | |
Javi Merino | 6b775e8 | 2015-03-02 17:17:19 +0000 | [diff] [blame] | 110 | config THERMAL_DEFAULT_GOV_POWER_ALLOCATOR |
| 111 | bool "power_allocator" |
YueHaibing | 5026061 | 2019-11-13 18:53:13 +0800 | [diff] [blame] | 112 | depends on THERMAL_GOV_POWER_ALLOCATOR |
Javi Merino | 6b775e8 | 2015-03-02 17:17:19 +0000 | [diff] [blame] | 113 | help |
| 114 | Select this if you want to control temperature based on |
| 115 | system and device power allocation. This governor can only |
| 116 | operate on cooling devices that implement the power API. |
| 117 | |
Durgadoss R | a56757a | 2012-09-21 14:32:24 +0530 | [diff] [blame] | 118 | endchoice |
Zhang Rui | 72e1989 | 2012-11-15 09:16:20 +0800 | [diff] [blame] | 119 | |
Zhang Rui | 9d185d0 | 2013-02-08 20:33:42 +0800 | [diff] [blame] | 120 | config THERMAL_GOV_FAIR_SHARE |
Zhang Rui | 72e1989 | 2012-11-15 09:16:20 +0800 | [diff] [blame] | 121 | bool "Fair-share thermal governor" |
| 122 | help |
| 123 | Enable this to manage platform thermals using fair-share governor. |
| 124 | |
Zhang Rui | 9d185d0 | 2013-02-08 20:33:42 +0800 | [diff] [blame] | 125 | config THERMAL_GOV_STEP_WISE |
Zhang Rui | 72e1989 | 2012-11-15 09:16:20 +0800 | [diff] [blame] | 126 | bool "Step_wise thermal governor" |
| 127 | help |
| 128 | Enable this to manage platform thermals using a simple linear |
Luka Perkov | a822794 | 2013-09-27 20:20:33 +0200 | [diff] [blame] | 129 | governor. |
Zhang Rui | 72e1989 | 2012-11-15 09:16:20 +0800 | [diff] [blame] | 130 | |
Peter Feuerer | e4dbf98 | 2014-07-22 17:37:13 +0200 | [diff] [blame] | 131 | config THERMAL_GOV_BANG_BANG |
| 132 | bool "Bang Bang thermal governor" |
| 133 | default n |
| 134 | help |
| 135 | Enable this to manage platform thermals using bang bang governor. |
| 136 | |
| 137 | Say 'Y' here if you want to use two point temperature regulation |
| 138 | used for fans without throttling. Some fan drivers depend on this |
| 139 | governor to be enabled (e.g. acerhdf). |
| 140 | |
Zhang Rui | 9d185d0 | 2013-02-08 20:33:42 +0800 | [diff] [blame] | 141 | config THERMAL_GOV_USER_SPACE |
Zhang Rui | 72e1989 | 2012-11-15 09:16:20 +0800 | [diff] [blame] | 142 | bool "User_space thermal governor" |
| 143 | help |
| 144 | Enable this to let the user space manage the platform thermals. |
| 145 | |
Javi Merino | 6b775e8 | 2015-03-02 17:17:19 +0000 | [diff] [blame] | 146 | config THERMAL_GOV_POWER_ALLOCATOR |
| 147 | bool "Power allocator thermal governor" |
Quentin Perret | a4e893e | 2019-10-30 15:14:51 +0000 | [diff] [blame] | 148 | depends on ENERGY_MODEL |
Javi Merino | 6b775e8 | 2015-03-02 17:17:19 +0000 | [diff] [blame] | 149 | help |
| 150 | Enable this to manage platform thermals by dynamically |
| 151 | allocating and limiting power to devices. |
| 152 | |
Zhang Rui | 72e1989 | 2012-11-15 09:16:20 +0800 | [diff] [blame] | 153 | config CPU_THERMAL |
Daniel Lezcano | 2e31c85 | 2019-04-02 18:12:49 +0200 | [diff] [blame] | 154 | bool "Generic cpu cooling support" |
Eduardo Valentin | 39d99cf | 2013-09-12 19:26:45 -0400 | [diff] [blame] | 155 | depends on THERMAL_OF |
Zhang Rui | 72e1989 | 2012-11-15 09:16:20 +0800 | [diff] [blame] | 156 | help |
Daniel Lezcano | 2b586fe | 2019-12-04 16:39:27 +0100 | [diff] [blame] | 157 | Enable the CPU cooling features. If the system has no active |
| 158 | cooling device available, this option allows to use the CPU |
| 159 | as a cooling device. |
| 160 | |
| 161 | if CPU_THERMAL |
| 162 | |
| 163 | config CPU_FREQ_THERMAL |
| 164 | bool "CPU frequency cooling device" |
| 165 | depends on CPU_FREQ |
| 166 | default y |
| 167 | help |
Zhang Rui | 72e1989 | 2012-11-15 09:16:20 +0800 | [diff] [blame] | 168 | This implements the generic cpu cooling mechanism through frequency |
Eduardo Valentin | f7188b3 | 2013-04-17 17:12:10 +0000 | [diff] [blame] | 169 | reduction. An ACPI version of this already exists |
| 170 | (drivers/acpi/processor_thermal.c). |
Zhang Rui | 72e1989 | 2012-11-15 09:16:20 +0800 | [diff] [blame] | 171 | This will be useful for platforms using the generic thermal interface |
| 172 | and not the ACPI interface. |
Eduardo Valentin | f7188b3 | 2013-04-17 17:12:10 +0000 | [diff] [blame] | 173 | |
Daniel Lezcano | a4c428e | 2019-12-19 23:53:16 +0100 | [diff] [blame] | 174 | config CPU_IDLE_THERMAL |
| 175 | bool "CPU idle cooling device" |
| 176 | depends on IDLE_INJECT |
| 177 | help |
| 178 | This implements the CPU cooling mechanism through |
| 179 | idle injection. This will throttle the CPU by injecting |
| 180 | idle cycle. |
Daniel Lezcano | 2b586fe | 2019-12-04 16:39:27 +0100 | [diff] [blame] | 181 | endif |
Zhang Rui | 72e1989 | 2012-11-15 09:16:20 +0800 | [diff] [blame] | 182 | |
Eduardo Valentin | f9df89d | 2014-01-06 09:04:18 -0400 | [diff] [blame] | 183 | config CLOCK_THERMAL |
| 184 | bool "Generic clock cooling support" |
| 185 | depends on COMMON_CLK |
| 186 | depends on PM_OPP |
| 187 | help |
| 188 | This entry implements the generic clock cooling mechanism through |
| 189 | frequency clipping. Typically used to cool off co-processors. The |
| 190 | device that is configured to use this cooling mechanism will be |
| 191 | controlled to reduce clock frequency whenever temperature is high. |
| 192 | |
Ørjan Eide | a76caf5 | 2015-09-10 18:09:30 +0100 | [diff] [blame] | 193 | config DEVFREQ_THERMAL |
| 194 | bool "Generic device cooling support" |
| 195 | depends on PM_DEVFREQ |
| 196 | depends on PM_OPP |
| 197 | help |
| 198 | This implements the generic devfreq cooling mechanism through |
| 199 | frequency reduction for devices using devfreq. |
| 200 | |
| 201 | This will throttle the device by limiting the maximum allowed DVFS |
| 202 | frequency corresponding to the cooling level. |
| 203 | |
| 204 | In order to use the power extensions of the cooling device, |
| 205 | devfreq should use the simple_ondemand governor. |
| 206 | |
Eduardo Valentin | f9df89d | 2014-01-06 09:04:18 -0400 | [diff] [blame] | 207 | If you want this support, you should say Y here. |
| 208 | |
Amit Daniel Kachhap | e6e238c | 2013-02-04 00:30:15 +0000 | [diff] [blame] | 209 | config THERMAL_EMULATION |
| 210 | bool "Thermal emulation mode support" |
| 211 | help |
| 212 | Enable this option to make a emul_temp sysfs node in thermal zone |
| 213 | directory to support temperature emulation. With emulation sysfs node, |
| 214 | user can manually input temperature and test the different trip |
| 215 | threshold behaviour for simulation purpose. |
| 216 | |
Eduardo Valentin | 8837295 | 2013-03-26 21:38:34 +0000 | [diff] [blame] | 217 | WARNING: Be careful while enabling this option on production systems, |
| 218 | because userland can easily disable the thermal policy by simply |
| 219 | flooding this sysfs node with low temperature values. |
| 220 | |
Talel Shenhar | 71aa369 | 2019-04-11 13:22:48 +0300 | [diff] [blame] | 221 | config THERMAL_MMIO |
| 222 | tristate "Generic Thermal MMIO driver" |
| 223 | depends on OF || COMPILE_TEST |
Talel Shenhar | 6ec8070 | 2019-04-29 12:47:36 +0300 | [diff] [blame] | 224 | depends on HAS_IOMEM |
Talel Shenhar | 71aa369 | 2019-04-11 13:22:48 +0300 | [diff] [blame] | 225 | help |
| 226 | This option enables the generic thermal MMIO driver that will use |
| 227 | memory-mapped reads to get the temperature. Any HW/System that |
| 228 | allows temperature reading by a single memory-mapped reading, be it |
| 229 | register or shared memory, is a potential candidate to work with this |
| 230 | driver. |
| 231 | |
kongxinwei | 9a5238a | 2015-05-20 19:16:37 +0800 | [diff] [blame] | 232 | config HISI_THERMAL |
| 233 | tristate "Hisilicon thermal driver" |
Leo Yan | f05f482 | 2016-08-31 16:50:16 +0800 | [diff] [blame] | 234 | depends on ARCH_HISI || COMPILE_TEST |
Krzysztof Kozlowski | bf82c35 | 2016-03-04 10:03:59 +0900 | [diff] [blame] | 235 | depends on HAS_IOMEM |
Leo Yan | f05f482 | 2016-08-31 16:50:16 +0800 | [diff] [blame] | 236 | depends on OF |
| 237 | default y |
kongxinwei | 9a5238a | 2015-05-20 19:16:37 +0800 | [diff] [blame] | 238 | help |
| 239 | Enable this to plug hisilicon's thermal sensor driver into the Linux |
| 240 | thermal framework. cpufreq is used as the cooling device to throttle |
| 241 | CPUs when the passive trip is crossed. |
| 242 | |
Shawn Guo | ca3de46 | 2013-06-24 14:30:44 +0800 | [diff] [blame] | 243 | config IMX_THERMAL |
| 244 | tristate "Temperature sensor driver for Freescale i.MX SoCs" |
Anson Huang | c589c56 | 2018-11-21 05:49:36 +0000 | [diff] [blame] | 245 | depends on ARCH_MXC || COMPILE_TEST |
Arnd Bergmann | 531fcde | 2017-09-18 22:48:16 +0200 | [diff] [blame] | 246 | depends on NVMEM || !NVMEM |
Shawn Guo | ca3de46 | 2013-06-24 14:30:44 +0800 | [diff] [blame] | 247 | depends on MFD_SYSCON |
| 248 | depends on OF |
| 249 | help |
| 250 | Support for Temperature Monitor (TEMPMON) found on Freescale i.MX SoCs. |
| 251 | It supports one critical trip point and one passive trip point. The |
| 252 | cpufreq is used as the cooling device to throttle CPUs when the |
| 253 | passive trip is crossed. |
| 254 | |
Anson Huang | e20db70 | 2020-02-22 08:08:50 +0800 | [diff] [blame] | 255 | config IMX_SC_THERMAL |
| 256 | tristate "Temperature sensor driver for NXP i.MX SoCs with System Controller" |
Anson Huang | ef502fc | 2020-03-03 16:04:44 +0800 | [diff] [blame] | 257 | depends on IMX_SCU |
Anson Huang | e20db70 | 2020-02-22 08:08:50 +0800 | [diff] [blame] | 258 | depends on OF |
| 259 | help |
| 260 | Support for Temperature Monitor (TEMPMON) found on NXP i.MX SoCs with |
| 261 | system controller inside, Linux kernel has to communicate with system |
| 262 | controller via MU (message unit) IPC to get temperature from thermal |
| 263 | sensor. It supports one critical trip point and one |
| 264 | passive trip point for each thermal sensor. |
| 265 | |
Anson Huang | 5eed800 | 2020-02-29 11:44:20 +0800 | [diff] [blame] | 266 | config IMX8MM_THERMAL |
| 267 | tristate "Temperature sensor driver for Freescale i.MX8MM SoC" |
Anson Huang | 52cbc58 | 2020-03-06 23:37:37 +0800 | [diff] [blame] | 268 | depends on ARCH_MXC || COMPILE_TEST |
Anson Huang | 5eed800 | 2020-02-29 11:44:20 +0800 | [diff] [blame] | 269 | depends on OF |
| 270 | help |
| 271 | Support for Thermal Monitoring Unit (TMU) found on Freescale i.MX8MM SoC. |
| 272 | It supports one critical trip point and one passive trip point. The |
| 273 | cpufreq is used as the cooling device to throttle CPUs when the passive |
| 274 | trip is crossed. |
| 275 | |
Laxman Dewangan | ec4664b | 2016-08-23 13:50:27 +0530 | [diff] [blame] | 276 | config MAX77620_THERMAL |
| 277 | tristate "Temperature sensor driver for Maxim MAX77620 PMIC" |
| 278 | depends on MFD_MAX77620 |
| 279 | depends on OF |
| 280 | help |
| 281 | Support for die junction temperature warning alarm for Maxim |
| 282 | Semiconductor PMIC MAX77620 device. Device generates two alarm |
| 283 | interrupts when PMIC die temperature cross the threshold of |
| 284 | 120 degC and 140 degC. |
| 285 | |
Jia Hongtao | 4352844 | 2016-06-30 11:08:38 +0800 | [diff] [blame] | 286 | config QORIQ_THERMAL |
| 287 | tristate "QorIQ Thermal Monitoring Unit" |
| 288 | depends on THERMAL_OF |
| 289 | depends on HAS_IOMEM |
Yuantian Tang | cbe259f | 2020-03-03 16:46:41 +0800 | [diff] [blame] | 290 | select REGMAP_MMIO |
Jia Hongtao | 4352844 | 2016-06-30 11:08:38 +0800 | [diff] [blame] | 291 | help |
| 292 | Support for Thermal Monitoring Unit (TMU) found on QorIQ platforms. |
| 293 | It supports one critical trip point and one passive trip point. The |
| 294 | cpufreq is used as the cooling device to throttle CPUs when the |
| 295 | passive trip is crossed. |
| 296 | |
Zhang Rui | 72e1989 | 2012-11-15 09:16:20 +0800 | [diff] [blame] | 297 | config SPEAR_THERMAL |
Arnd Bergmann | 4d2f179 | 2016-01-25 17:44:11 +0100 | [diff] [blame] | 298 | tristate "SPEAr thermal sensor driver" |
Eduardo Valentin | aa2937b | 2015-09-09 20:42:01 -0700 | [diff] [blame] | 299 | depends on PLAT_SPEAR || COMPILE_TEST |
Krzysztof Kozlowski | bf82c35 | 2016-03-04 10:03:59 +0900 | [diff] [blame] | 300 | depends on HAS_IOMEM |
Zhang Rui | 72e1989 | 2012-11-15 09:16:20 +0800 | [diff] [blame] | 301 | depends on OF |
| 302 | help |
| 303 | Enable this to plug the SPEAr thermal sensor driver into the Linux |
Luka Perkov | a822794 | 2013-09-27 20:20:33 +0200 | [diff] [blame] | 304 | thermal framework. |
Zhang Rui | 72e1989 | 2012-11-15 09:16:20 +0800 | [diff] [blame] | 305 | |
Yangtao Li | dccc5c3 | 2019-12-19 09:28:17 -0800 | [diff] [blame] | 306 | config SUN8I_THERMAL |
| 307 | tristate "Allwinner sun8i thermal driver" |
| 308 | depends on ARCH_SUNXI || COMPILE_TEST |
| 309 | depends on HAS_IOMEM |
| 310 | depends on NVMEM |
| 311 | depends on OF |
| 312 | depends on RESET_CONTROLLER |
| 313 | help |
| 314 | Support for the sun8i thermal sensor driver into the Linux thermal |
| 315 | framework. |
| 316 | |
| 317 | To compile this driver as a module, choose M here: the |
| 318 | module will be called sun8i-thermal. |
| 319 | |
Caesar Wang | cbac8f63 | 2014-11-24 12:58:59 +0800 | [diff] [blame] | 320 | config ROCKCHIP_THERMAL |
| 321 | tristate "Rockchip thermal driver" |
Eduardo Valentin | 444f9b0 | 2015-09-09 20:43:57 -0700 | [diff] [blame] | 322 | depends on ARCH_ROCKCHIP || COMPILE_TEST |
Caesar Wang | cbac8f63 | 2014-11-24 12:58:59 +0800 | [diff] [blame] | 323 | depends on RESET_CONTROLLER |
Krzysztof Kozlowski | bf82c35 | 2016-03-04 10:03:59 +0900 | [diff] [blame] | 324 | depends on HAS_IOMEM |
Caesar Wang | cbac8f63 | 2014-11-24 12:58:59 +0800 | [diff] [blame] | 325 | help |
| 326 | Rockchip thermal driver provides support for Temperature sensor |
| 327 | ADC (TS-ADC) found on Rockchip SoCs. It supports one critical |
| 328 | trip point. Cpufreq is used as the cooling device and will throttle |
| 329 | CPUs when the Temperature crosses the passive trip point. |
| 330 | |
Zhang Rui | 72e1989 | 2012-11-15 09:16:20 +0800 | [diff] [blame] | 331 | config RCAR_THERMAL |
| 332 | tristate "Renesas R-Car thermal driver" |
Simon Horman | 8255e4e | 2016-03-02 11:04:26 +0900 | [diff] [blame] | 333 | depends on ARCH_RENESAS || COMPILE_TEST |
Richard Weinberger | d1c8b04 | 2014-01-27 09:40:58 +0100 | [diff] [blame] | 334 | depends on HAS_IOMEM |
Zhang Rui | 72e1989 | 2012-11-15 09:16:20 +0800 | [diff] [blame] | 335 | help |
| 336 | Enable this to plug the R-Car thermal sensor driver into the Linux |
Luka Perkov | a822794 | 2013-09-27 20:20:33 +0200 | [diff] [blame] | 337 | thermal framework. |
Zhang Rui | 72e1989 | 2012-11-15 09:16:20 +0800 | [diff] [blame] | 338 | |
Wolfram Sang | 564e73d | 2016-12-22 11:38:21 +0100 | [diff] [blame] | 339 | config RCAR_GEN3_THERMAL |
| 340 | tristate "Renesas R-Car Gen3 thermal driver" |
| 341 | depends on ARCH_RENESAS || COMPILE_TEST |
| 342 | depends on HAS_IOMEM |
| 343 | depends on OF |
| 344 | help |
| 345 | Enable this to plug the R-Car Gen3 thermal sensor driver into the Linux |
| 346 | thermal framework. |
| 347 | |
Nobuhiro Iwamatsu | 7060aa3 | 2013-02-06 06:35:24 +0000 | [diff] [blame] | 348 | config KIRKWOOD_THERMAL |
| 349 | tristate "Temperature sensor on Marvell Kirkwood SoCs" |
Eduardo Valentin | 9c8aa95 | 2015-09-09 20:44:46 -0700 | [diff] [blame] | 350 | depends on MACH_KIRKWOOD || COMPILE_TEST |
Krzysztof Kozlowski | bf82c35 | 2016-03-04 10:03:59 +0900 | [diff] [blame] | 351 | depends on HAS_IOMEM |
Nobuhiro Iwamatsu | 7060aa3 | 2013-02-06 06:35:24 +0000 | [diff] [blame] | 352 | depends on OF |
| 353 | help |
| 354 | Support for the Kirkwood thermal sensor driver into the Linux thermal |
| 355 | framework. Only kirkwood 88F6282 and 88F6283 have this sensor. |
| 356 | |
Andrew Lunn | 74ffa64 | 2013-02-06 06:35:26 +0000 | [diff] [blame] | 357 | config DOVE_THERMAL |
| 358 | tristate "Temperature sensor on Marvell Dove SoCs" |
Eduardo Valentin | 07fffd5 | 2015-09-09 20:45:25 -0700 | [diff] [blame] | 359 | depends on ARCH_DOVE || MACH_DOVE || COMPILE_TEST |
Krzysztof Kozlowski | bf82c35 | 2016-03-04 10:03:59 +0900 | [diff] [blame] | 360 | depends on HAS_IOMEM |
Andrew Lunn | 74ffa64 | 2013-02-06 06:35:26 +0000 | [diff] [blame] | 361 | depends on OF |
| 362 | help |
| 363 | Support for the Dove thermal sensor driver in the Linux thermal |
| 364 | framework. |
| 365 | |
hongbo.zhang | aa1acb0 | 2012-11-15 18:56:42 +0800 | [diff] [blame] | 366 | config DB8500_THERMAL |
Arnd Bergmann | 26716ce | 2016-01-25 17:44:12 +0100 | [diff] [blame] | 367 | tristate "DB8500 thermal management" |
Linus Walleij | cb063a8 | 2019-08-28 15:03:18 +0200 | [diff] [blame] | 368 | depends on MFD_DB8500_PRCMU && OF |
hongbo.zhang | aa1acb0 | 2012-11-15 18:56:42 +0800 | [diff] [blame] | 369 | default y |
| 370 | help |
| 371 | Adds DB8500 thermal management implementation according to the thermal |
| 372 | management framework. A thermal zone with several trip points will be |
| 373 | created. Cooling devices can be bound to the trip points to cool this |
| 374 | thermal zone if trip points reached. |
| 375 | |
Ezequiel Garcia | fa0d654 | 2013-04-02 01:37:41 +0000 | [diff] [blame] | 376 | config ARMADA_THERMAL |
Miquel Raynal | a9d58a1 | 2017-12-22 17:14:10 +0100 | [diff] [blame] | 377 | tristate "Marvell EBU Armada SoCs thermal management" |
Eduardo Valentin | 1b15826 | 2015-09-09 20:48:00 -0700 | [diff] [blame] | 378 | depends on ARCH_MVEBU || COMPILE_TEST |
Krzysztof Kozlowski | bf82c35 | 2016-03-04 10:03:59 +0900 | [diff] [blame] | 379 | depends on HAS_IOMEM |
Ezequiel Garcia | fa0d654 | 2013-04-02 01:37:41 +0000 | [diff] [blame] | 380 | depends on OF |
| 381 | help |
| 382 | Enable this option if you want to have support for thermal management |
Miquel Raynal | a9d58a1 | 2017-12-22 17:14:10 +0100 | [diff] [blame] | 383 | controller present in Marvell EBU Armada SoCs (370,375,XP,38x,7K,8K). |
Ezequiel Garcia | fa0d654 | 2013-04-02 01:37:41 +0000 | [diff] [blame] | 384 | |
Steve Twiss | 608567a | 2017-03-28 15:43:33 +0100 | [diff] [blame] | 385 | config DA9062_THERMAL |
| 386 | tristate "DA9062/DA9061 Dialog Semiconductor thermal driver" |
| 387 | depends on MFD_DA9062 || COMPILE_TEST |
| 388 | depends on OF |
| 389 | help |
| 390 | Enable this for the Dialog Semiconductor thermal sensor driver. |
| 391 | This will report PMIC junction over-temperature for one thermal trip |
| 392 | zone. |
| 393 | Compatible with the DA9062 and DA9061 PMICs. |
| 394 | |
Sascha Hauer | a92db1c | 2015-11-30 12:42:32 +0100 | [diff] [blame] | 395 | config MTK_THERMAL |
| 396 | tristate "Temperature sensor driver for mediatek SoCs" |
| 397 | depends on ARCH_MEDIATEK || COMPILE_TEST |
Eduardo Valentin | 74e5053 | 2016-03-08 13:32:48 -0800 | [diff] [blame] | 398 | depends on HAS_IOMEM |
Randy Dunlap | 62e14f6 | 2016-04-19 09:44:23 -0700 | [diff] [blame] | 399 | depends on NVMEM || NVMEM=n |
Johannes Berg | a6f4850 | 2016-04-14 15:15:20 +0200 | [diff] [blame] | 400 | depends on RESET_CONTROLLER |
Sascha Hauer | a92db1c | 2015-11-30 12:42:32 +0100 | [diff] [blame] | 401 | default y |
| 402 | help |
| 403 | Enable this option if you want to have support for thermal management |
| 404 | controller present in Mediatek SoCs |
| 405 | |
Guillaume La Roque | 421eda1 | 2019-10-04 11:01:09 +0200 | [diff] [blame] | 406 | config AMLOGIC_THERMAL |
| 407 | tristate "Amlogic Thermal Support" |
| 408 | default ARCH_MESON |
| 409 | depends on OF && ARCH_MESON |
| 410 | help |
| 411 | If you say yes here you get support for Amlogic Thermal |
| 412 | for G12 SoC Family. |
| 413 | |
| 414 | This driver can also be built as a module. If so, the module will |
| 415 | be called amlogic_thermal. |
| 416 | |
Amit Kucheria | 3e8c4d3 | 2018-12-07 12:25:26 +0530 | [diff] [blame] | 417 | menu "Intel thermal drivers" |
| 418 | depends on X86 || X86_INTEL_QUARK || COMPILE_TEST |
| 419 | source "drivers/thermal/intel/Kconfig" |
| 420 | endmenu |
| 421 | |
Rafał Miłecki | a94cb7e | 2017-04-03 17:48:29 +0200 | [diff] [blame] | 422 | menu "Broadcom thermal drivers" |
Pramod Kumar | 250e211 | 2019-01-03 14:25:33 +0530 | [diff] [blame] | 423 | depends on ARCH_BCM || ARCH_BRCMSTB || ARCH_BCM2835 || ARCH_BCM_IPROC || \ |
| 424 | COMPILE_TEST |
Rafał Miłecki | a94cb7e | 2017-04-03 17:48:29 +0200 | [diff] [blame] | 425 | source "drivers/thermal/broadcom/Kconfig" |
| 426 | endmenu |
| 427 | |
Eduardo Valentin | eb98200 | 2013-05-15 15:46:00 +0000 | [diff] [blame] | 428 | menu "Texas Instruments thermal drivers" |
Eduardo Valentin | ec2feb4 | 2015-09-09 21:13:41 -0700 | [diff] [blame] | 429 | depends on ARCH_HAS_BANDGAP || COMPILE_TEST |
Krzysztof Kozlowski | bf82c35 | 2016-03-04 10:03:59 +0900 | [diff] [blame] | 430 | depends on HAS_IOMEM |
Eduardo Valentin | eb98200 | 2013-05-15 15:46:00 +0000 | [diff] [blame] | 431 | source "drivers/thermal/ti-soc-thermal/Kconfig" |
| 432 | endmenu |
Zhang Rui | f157f59 | 2013-06-18 06:31:26 +0800 | [diff] [blame] | 433 | |
Amit Daniel Kachhap | c682137 | 2013-06-24 16:20:22 +0530 | [diff] [blame] | 434 | menu "Samsung thermal drivers" |
Eduardo Valentin | 2bf4273 | 2015-09-09 20:53:35 -0700 | [diff] [blame] | 435 | depends on ARCH_EXYNOS || COMPILE_TEST |
Amit Daniel Kachhap | c682137 | 2013-06-24 16:20:22 +0530 | [diff] [blame] | 436 | source "drivers/thermal/samsung/Kconfig" |
| 437 | endmenu |
| 438 | |
Lee Jones | 60aef7c | 2014-06-05 16:06:55 +0100 | [diff] [blame] | 439 | menu "STMicroelectronics thermal drivers" |
David HERNANDEZ SANCHEZ | 1d69315 | 2018-10-05 10:08:46 +0000 | [diff] [blame] | 440 | depends on (ARCH_STI || ARCH_STM32) && OF |
Lee Jones | 60aef7c | 2014-06-05 16:06:55 +0100 | [diff] [blame] | 441 | source "drivers/thermal/st/Kconfig" |
| 442 | endmenu |
| 443 | |
Marc Gonzalez | 0b58c08 | 2016-04-19 16:21:16 +0200 | [diff] [blame] | 444 | config TANGO_THERMAL |
| 445 | tristate "Tango thermal management" |
| 446 | depends on ARCH_TANGO || COMPILE_TEST |
| 447 | help |
| 448 | Enable the Tango thermal driver, which supports the primitive |
| 449 | temperature sensor embedded in Tango chips since the SMP8758. |
| 450 | This sensor only generates a 1-bit signal to indicate whether |
| 451 | the die temperature exceeds a programmable threshold. |
| 452 | |
Wei Ni | a4dff94 | 2016-03-29 18:29:11 +0800 | [diff] [blame] | 453 | source "drivers/thermal/tegra/Kconfig" |
| 454 | |
Laxman Dewangan | b3aef78 | 2016-04-19 12:52:01 +0530 | [diff] [blame] | 455 | config GENERIC_ADC_THERMAL |
| 456 | tristate "Generic ADC based thermal sensor" |
| 457 | depends on IIO |
| 458 | help |
| 459 | This enabled a thermal sysfs driver for the temperature sensor |
| 460 | which is connected to the General Purpose ADC. The ADC channel |
| 461 | is read via IIO framework and the channel information is provided |
| 462 | to this driver. This driver reports the temperature by reading ADC |
| 463 | channel and converts it to temperature based on lookup table. |
| 464 | |
Rajendra Nayak | 9066073 | 2016-05-05 14:21:39 +0530 | [diff] [blame] | 465 | menu "Qualcomm thermal drivers" |
| 466 | depends on (ARCH_QCOM && OF) || COMPILE_TEST |
| 467 | source "drivers/thermal/qcom/Kconfig" |
| 468 | endmenu |
| 469 | |
Baoyou Xie | 50fdd36 | 2017-02-07 08:56:41 +0800 | [diff] [blame] | 470 | config ZX2967_THERMAL |
| 471 | tristate "Thermal sensors on zx2967 SoC" |
| 472 | depends on ARCH_ZX || COMPILE_TEST |
| 473 | help |
| 474 | Enable the zx2967 thermal sensors driver, which supports |
| 475 | the primitive temperature sensor embedded in zx2967 SoCs. |
| 476 | This sensor generates the real time die temperature. |
| 477 | |
Kunihiko Hayashi | 86da439 | 2017-08-01 17:04:51 +0900 | [diff] [blame] | 478 | config UNIPHIER_THERMAL |
| 479 | tristate "Socionext UniPhier thermal driver" |
| 480 | depends on ARCH_UNIPHIER || COMPILE_TEST |
| 481 | depends on THERMAL_OF && MFD_SYSCON |
| 482 | help |
| 483 | Enable this to plug in UniPhier on-chip PVT thermal driver into the |
| 484 | thermal framework. The driver supports CPU thermal zone temperature |
| 485 | reporting and a couple of trip points. |
Freeman Liu | 554fdba | 2020-02-18 16:10:28 +0800 | [diff] [blame] | 486 | |
| 487 | config SPRD_THERMAL |
| 488 | tristate "Temperature sensor on Spreadtrum SoCs" |
| 489 | depends on ARCH_SPRD || COMPILE_TEST |
| 490 | help |
| 491 | Support for the Spreadtrum thermal sensor driver in the Linux thermal |
| 492 | framework. |
Zhang Rui | 72e1989 | 2012-11-15 09:16:20 +0800 | [diff] [blame] | 493 | endif |