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 45a56757afSDurgadoss Rchoice 46a56757afSDurgadoss R prompt "Default Thermal governor" 47a56757afSDurgadoss R default THERMAL_DEFAULT_GOV_STEP_WISE 48a56757afSDurgadoss R help 49a56757afSDurgadoss R This option sets which thermal governor shall be loaded at 50a56757afSDurgadoss R startup. If in doubt, select 'step_wise'. 51a56757afSDurgadoss R 52a56757afSDurgadoss Rconfig THERMAL_DEFAULT_GOV_STEP_WISE 53a56757afSDurgadoss R bool "step_wise" 549d185d04SZhang Rui select THERMAL_GOV_STEP_WISE 55a56757afSDurgadoss R help 56a56757afSDurgadoss R Use the step_wise governor as default. This throttles the 57a56757afSDurgadoss R devices one step at a time. 58a56757afSDurgadoss R 59a56757afSDurgadoss Rconfig THERMAL_DEFAULT_GOV_FAIR_SHARE 60a56757afSDurgadoss R bool "fair_share" 619d185d04SZhang Rui select THERMAL_GOV_FAIR_SHARE 62a56757afSDurgadoss R help 63a56757afSDurgadoss R Use the fair_share governor as default. This throttles the 64a56757afSDurgadoss R devices based on their 'contribution' to a zone. The 65a56757afSDurgadoss R contribution should be provided through platform data. 66a56757afSDurgadoss R 67a56757afSDurgadoss Rconfig THERMAL_DEFAULT_GOV_USER_SPACE 68a56757afSDurgadoss R bool "user_space" 699d185d04SZhang Rui select THERMAL_GOV_USER_SPACE 70a56757afSDurgadoss R help 71a56757afSDurgadoss R Select this if you want to let the user space manage the 72ece238feSRegid Ichira platform thermals. 7372e19897SZhang Rui 74a56757afSDurgadoss Rendchoice 7572e19897SZhang Rui 769d185d04SZhang Ruiconfig THERMAL_GOV_FAIR_SHARE 7772e19897SZhang Rui bool "Fair-share thermal governor" 7872e19897SZhang Rui help 7972e19897SZhang Rui Enable this to manage platform thermals using fair-share governor. 8072e19897SZhang Rui 819d185d04SZhang Ruiconfig THERMAL_GOV_STEP_WISE 8272e19897SZhang Rui bool "Step_wise thermal governor" 8372e19897SZhang Rui help 8472e19897SZhang Rui Enable this to manage platform thermals using a simple linear 85a8227948SLuka Perkov governor. 8672e19897SZhang Rui 879d185d04SZhang Ruiconfig THERMAL_GOV_USER_SPACE 8872e19897SZhang Rui bool "User_space thermal governor" 8972e19897SZhang Rui help 9072e19897SZhang Rui Enable this to let the user space manage the platform thermals. 9172e19897SZhang Rui 9272e19897SZhang Ruiconfig CPU_THERMAL 93bbf7fc88SZhang Rui bool "generic cpu cooling support" 9472e19897SZhang Rui depends on CPU_FREQ 9539d99cffSEduardo Valentin depends on THERMAL_OF 9672e19897SZhang Rui help 9772e19897SZhang Rui This implements the generic cpu cooling mechanism through frequency 98f7188b3dSEduardo Valentin reduction. An ACPI version of this already exists 99f7188b3dSEduardo Valentin (drivers/acpi/processor_thermal.c). 10072e19897SZhang Rui This will be useful for platforms using the generic thermal interface 10172e19897SZhang Rui and not the ACPI interface. 102f7188b3dSEduardo Valentin 10372e19897SZhang Rui If you want this support, you should say Y here. 10472e19897SZhang Rui 105e6e238c3SAmit Daniel Kachhapconfig THERMAL_EMULATION 106e6e238c3SAmit Daniel Kachhap bool "Thermal emulation mode support" 107e6e238c3SAmit Daniel Kachhap help 108e6e238c3SAmit Daniel Kachhap Enable this option to make a emul_temp sysfs node in thermal zone 109e6e238c3SAmit Daniel Kachhap directory to support temperature emulation. With emulation sysfs node, 110e6e238c3SAmit Daniel Kachhap user can manually input temperature and test the different trip 111e6e238c3SAmit Daniel Kachhap threshold behaviour for simulation purpose. 112e6e238c3SAmit Daniel Kachhap 1138837295aSEduardo Valentin WARNING: Be careful while enabling this option on production systems, 1148837295aSEduardo Valentin because userland can easily disable the thermal policy by simply 1158837295aSEduardo Valentin flooding this sysfs node with low temperature values. 1168837295aSEduardo Valentin 117ca3de46bSShawn Guoconfig IMX_THERMAL 118ca3de46bSShawn Guo tristate "Temperature sensor driver for Freescale i.MX SoCs" 119ca3de46bSShawn Guo depends on CPU_THERMAL 120ca3de46bSShawn Guo depends on MFD_SYSCON 121ca3de46bSShawn Guo depends on OF 122ca3de46bSShawn Guo help 123ca3de46bSShawn Guo Support for Temperature Monitor (TEMPMON) found on Freescale i.MX SoCs. 124ca3de46bSShawn Guo It supports one critical trip point and one passive trip point. The 125ca3de46bSShawn Guo cpufreq is used as the cooling device to throttle CPUs when the 126ca3de46bSShawn Guo passive trip is crossed. 127ca3de46bSShawn Guo 12872e19897SZhang Ruiconfig SPEAR_THERMAL 12972e19897SZhang Rui bool "SPEAr thermal sensor driver" 13072e19897SZhang Rui depends on PLAT_SPEAR 13172e19897SZhang Rui depends on OF 13272e19897SZhang Rui help 13372e19897SZhang Rui Enable this to plug the SPEAr thermal sensor driver into the Linux 134a8227948SLuka Perkov thermal framework. 13572e19897SZhang Rui 13672e19897SZhang Ruiconfig RCAR_THERMAL 13772e19897SZhang Rui tristate "Renesas R-Car thermal driver" 138beeb5a1eSLaurent Pinchart depends on ARCH_SHMOBILE || COMPILE_TEST 139*d1c8b041SRichard Weinberger depends on HAS_IOMEM 14072e19897SZhang Rui help 14172e19897SZhang Rui Enable this to plug the R-Car thermal sensor driver into the Linux 142a8227948SLuka Perkov thermal framework. 14372e19897SZhang Rui 1447060aa36SNobuhiro Iwamatsuconfig KIRKWOOD_THERMAL 1457060aa36SNobuhiro Iwamatsu tristate "Temperature sensor on Marvell Kirkwood SoCs" 1467060aa36SNobuhiro Iwamatsu depends on ARCH_KIRKWOOD 1477060aa36SNobuhiro Iwamatsu depends on OF 1487060aa36SNobuhiro Iwamatsu help 1497060aa36SNobuhiro Iwamatsu Support for the Kirkwood thermal sensor driver into the Linux thermal 1507060aa36SNobuhiro Iwamatsu framework. Only kirkwood 88F6282 and 88F6283 have this sensor. 1517060aa36SNobuhiro Iwamatsu 15274ffa64cSAndrew Lunnconfig DOVE_THERMAL 15374ffa64cSAndrew Lunn tristate "Temperature sensor on Marvell Dove SoCs" 15474ffa64cSAndrew Lunn depends on ARCH_DOVE 15574ffa64cSAndrew Lunn depends on OF 15674ffa64cSAndrew Lunn help 15774ffa64cSAndrew Lunn Support for the Dove thermal sensor driver in the Linux thermal 15874ffa64cSAndrew Lunn framework. 15974ffa64cSAndrew Lunn 160aa1acb04Shongbo.zhangconfig DB8500_THERMAL 161aa1acb04Shongbo.zhang bool "DB8500 thermal management" 162aa1acb04Shongbo.zhang depends on ARCH_U8500 163aa1acb04Shongbo.zhang default y 164aa1acb04Shongbo.zhang help 165aa1acb04Shongbo.zhang Adds DB8500 thermal management implementation according to the thermal 166aa1acb04Shongbo.zhang management framework. A thermal zone with several trip points will be 167aa1acb04Shongbo.zhang created. Cooling devices can be bound to the trip points to cool this 168aa1acb04Shongbo.zhang thermal zone if trip points reached. 169aa1acb04Shongbo.zhang 170fa0d654cSEzequiel Garciaconfig ARMADA_THERMAL 171fa0d654cSEzequiel Garcia tristate "Armada 370/XP thermal management" 172fa0d654cSEzequiel Garcia depends on ARCH_MVEBU 173fa0d654cSEzequiel Garcia depends on OF 174fa0d654cSEzequiel Garcia help 175fa0d654cSEzequiel Garcia Enable this option if you want to have support for thermal management 176fa0d654cSEzequiel Garcia controller present in Armada 370 and Armada XP SoC. 177fa0d654cSEzequiel Garcia 178aa1acb04Shongbo.zhangconfig DB8500_CPUFREQ_COOLING 179aa1acb04Shongbo.zhang tristate "DB8500 cpufreq cooling" 180aa1acb04Shongbo.zhang depends on ARCH_U8500 181aa1acb04Shongbo.zhang depends on CPU_THERMAL 182aa1acb04Shongbo.zhang default y 183aa1acb04Shongbo.zhang help 184aa1acb04Shongbo.zhang Adds DB8500 cpufreq cooling devices, and these cooling devices can be 185aa1acb04Shongbo.zhang bound to thermal zone trip points. When a trip point reached, the 186aa1acb04Shongbo.zhang bound cpufreq cooling device turns active to set CPU frequency low to 187aa1acb04Shongbo.zhang cool down the CPU. 18872e19897SZhang Rui 189d6d71ee4SJacob Panconfig INTEL_POWERCLAMP 190d6d71ee4SJacob Pan tristate "Intel PowerClamp idle injection driver" 191d6d71ee4SJacob Pan depends on THERMAL 192d6d71ee4SJacob Pan depends on X86 193d6d71ee4SJacob Pan depends on CPU_SUP_INTEL 194d6d71ee4SJacob Pan help 195d6d71ee4SJacob Pan Enable this to enable Intel PowerClamp idle injection driver. This 196d6d71ee4SJacob Pan enforce idle time which results in more package C-state residency. The 197d6d71ee4SJacob Pan user interface is exposed via generic thermal framework. 198d6d71ee4SJacob Pan 199f1a18a10SSrinivas Pandruvadaconfig X86_PKG_TEMP_THERMAL 200f1a18a10SSrinivas Pandruvada tristate "X86 package temperature thermal driver" 201b3ba0206SRandy Dunlap depends on X86_THERMAL_VECTOR 202f1a18a10SSrinivas Pandruvada select THERMAL_GOV_USER_SPACE 203f1a18a10SSrinivas Pandruvada default m 204f1a18a10SSrinivas Pandruvada help 205f1a18a10SSrinivas Pandruvada Enable this to register CPU digital sensor for package temperature as 206f1a18a10SSrinivas Pandruvada thermal zone. Each package will have its own thermal zone. There are 207f1a18a10SSrinivas Pandruvada two trip points which can be set by user to get notifications via thermal 208f1a18a10SSrinivas Pandruvada notification methods. 209f1a18a10SSrinivas Pandruvada 210925c36bbSSrinivas Pandruvadaconfig ACPI_INT3403_THERMAL 211925c36bbSSrinivas Pandruvada tristate "ACPI INT3403 thermal driver" 212925c36bbSSrinivas Pandruvada depends on X86 && ACPI 213925c36bbSSrinivas Pandruvada help 21437d6a82bSZhang Rui Newer laptops and tablets that use ACPI may have thermal sensors 21537d6a82bSZhang Rui outside the core CPU/SOC for thermal safety reasons. These 21637d6a82bSZhang Rui temperature sensors are also exposed for the OS to use via the so 21737d6a82bSZhang Rui called INT3403 ACPI object. This driver will, on devices that have 21837d6a82bSZhang Rui such sensors, expose the temperature information from these sensors 21937d6a82bSZhang Rui to userspace via the normal thermal framework. This means that a wide 22037d6a82bSZhang Rui range of applications and GUI widgets can show this information to 22137d6a82bSZhang Rui the user or use this information for making decisions. For example, 22237d6a82bSZhang Rui the Intel Thermal Daemon can use this information to allow the user 22337d6a82bSZhang Rui to select his laptop to run without turning on the fans. 224925c36bbSSrinivas Pandruvada 225eb982001SEduardo Valentinmenu "Texas Instruments thermal drivers" 226eb982001SEduardo Valentinsource "drivers/thermal/ti-soc-thermal/Kconfig" 227eb982001SEduardo Valentinendmenu 228f157f596SZhang Rui 229c6821378SAmit Daniel Kachhapmenu "Samsung thermal drivers" 230c6821378SAmit Daniel Kachhapdepends on PLAT_SAMSUNG 231c6821378SAmit Daniel Kachhapsource "drivers/thermal/samsung/Kconfig" 232c6821378SAmit Daniel Kachhapendmenu 233c6821378SAmit Daniel Kachhap 23472e19897SZhang Ruiendif 235