Commit | Line | Data |
---|---|---|
203d3d4a ZR |
1 | # |
2 | # Generic thermal sysfs drivers configuration | |
3 | # | |
4 | ||
5 | menuconfig THERMAL | |
63c4ec90 | 6 | tristate "Generic Thermal sysfs driver" |
203d3d4a ZR |
7 | help |
8 | Generic Thermal Sysfs driver offers a generic mechanism for | |
9 | thermal management. Usually it's made up of one or more thermal | |
10 | zone and cooling device. | |
543a9561 | 11 | Each thermal zone contains its own temperature, trip points, |
203d3d4a ZR |
12 | cooling devices. |
13 | All platforms with ACPI thermal support can use this driver. | |
63c4ec90 | 14 | If you want this support, you should say Y or M here. |
16d75239 | 15 | |
72e19897 ZR |
16 | if THERMAL |
17 | ||
16d75239 | 18 | config THERMAL_HWMON |
ab92402a | 19 | bool |
0dd88793 | 20 | prompt "Expose thermal sensors as hwmon device" |
16d75239 | 21 | depends on HWMON=y || HWMON=THERMAL |
ab92402a | 22 | default y |
0dd88793 EV |
23 | help |
24 | In case a sensor is registered with the thermal | |
25 | framework, this option will also register it | |
26 | as a hwmon. The sensor will then have the common | |
27 | hwmon sysfs interface. | |
28 | ||
29 | Say 'Y' here if you want all thermal sensors to | |
30 | have hwmon sysfs interface too. | |
6a92c366 | 31 | |
4e5e4705 EV |
32 | config THERMAL_OF |
33 | bool | |
34 | prompt "APIs to parse thermal data out of device tree" | |
35 | depends on OF | |
36 | default y | |
37 | help | |
38 | This options provides helpers to add the support to | |
39 | read and parse thermal data definitions out of the | |
40 | device tree blob. | |
41 | ||
42 | Say 'Y' here if you need to build thermal infrastructure | |
43 | based on device tree. | |
44 | ||
72e19897 ZR |
45 | choice |
46 | prompt "Default Thermal governor" | |
47 | default THERMAL_DEFAULT_GOV_STEP_WISE | |
48 | help | |
49 | This option sets which thermal governor shall be loaded at | |
50 | startup. If in doubt, select 'step_wise'. | |
51 | ||
52 | config THERMAL_DEFAULT_GOV_STEP_WISE | |
53 | bool "step_wise" | |
9d185d04 | 54 | select THERMAL_GOV_STEP_WISE |
72e19897 ZR |
55 | help |
56 | Use the step_wise governor as default. This throttles the | |
57 | devices one step at a time. | |
58 | ||
59 | config THERMAL_DEFAULT_GOV_FAIR_SHARE | |
60 | bool "fair_share" | |
9d185d04 | 61 | select THERMAL_GOV_FAIR_SHARE |
72e19897 ZR |
62 | help |
63 | Use the fair_share governor as default. This throttles the | |
64 | devices based on their 'contribution' to a zone. The | |
65 | contribution should be provided through platform data. | |
66 | ||
67 | config THERMAL_DEFAULT_GOV_USER_SPACE | |
68 | bool "user_space" | |
9d185d04 | 69 | select THERMAL_GOV_USER_SPACE |
72e19897 ZR |
70 | help |
71 | Select this if you want to let the user space manage the | |
ece238fe | 72 | platform thermals. |
72e19897 ZR |
73 | |
74 | endchoice | |
75 | ||
9d185d04 | 76 | config THERMAL_GOV_FAIR_SHARE |
72e19897 ZR |
77 | bool "Fair-share thermal governor" |
78 | help | |
79 | Enable this to manage platform thermals using fair-share governor. | |
80 | ||
9d185d04 | 81 | config THERMAL_GOV_STEP_WISE |
72e19897 ZR |
82 | bool "Step_wise thermal governor" |
83 | help | |
84 | Enable this to manage platform thermals using a simple linear | |
a8227948 | 85 | governor. |
72e19897 | 86 | |
e4dbf98f PF |
87 | config THERMAL_GOV_BANG_BANG |
88 | bool "Bang Bang thermal governor" | |
89 | default n | |
90 | help | |
91 | Enable this to manage platform thermals using bang bang governor. | |
92 | ||
93 | Say 'Y' here if you want to use two point temperature regulation | |
94 | used for fans without throttling. Some fan drivers depend on this | |
95 | governor to be enabled (e.g. acerhdf). | |
96 | ||
9d185d04 | 97 | config THERMAL_GOV_USER_SPACE |
72e19897 ZR |
98 | bool "User_space thermal governor" |
99 | help | |
100 | Enable this to let the user space manage the platform thermals. | |
101 | ||
02361418 | 102 | config CPU_THERMAL |
bbf7fc88 | 103 | bool "generic cpu cooling support" |
72e19897 | 104 | depends on CPU_FREQ |
39d99cff | 105 | depends on THERMAL_OF |
02361418 ADK |
106 | help |
107 | This implements the generic cpu cooling mechanism through frequency | |
f7188b3d EV |
108 | reduction. An ACPI version of this already exists |
109 | (drivers/acpi/processor_thermal.c). | |
02361418 ADK |
110 | This will be useful for platforms using the generic thermal interface |
111 | and not the ACPI interface. | |
f7188b3d | 112 | |
02361418 ADK |
113 | If you want this support, you should say Y here. |
114 | ||
f9df89d8 EV |
115 | config CLOCK_THERMAL |
116 | bool "Generic clock cooling support" | |
117 | depends on COMMON_CLK | |
118 | depends on PM_OPP | |
119 | help | |
120 | This entry implements the generic clock cooling mechanism through | |
121 | frequency clipping. Typically used to cool off co-processors. The | |
122 | device that is configured to use this cooling mechanism will be | |
123 | controlled to reduce clock frequency whenever temperature is high. | |
124 | ||
125 | If you want this support, you should say Y here. | |
126 | ||
e6e238c3 ADK |
127 | config THERMAL_EMULATION |
128 | bool "Thermal emulation mode support" | |
129 | help | |
130 | Enable this option to make a emul_temp sysfs node in thermal zone | |
131 | directory to support temperature emulation. With emulation sysfs node, | |
132 | user can manually input temperature and test the different trip | |
133 | threshold behaviour for simulation purpose. | |
134 | ||
8837295a EV |
135 | WARNING: Be careful while enabling this option on production systems, |
136 | because userland can easily disable the thermal policy by simply | |
137 | flooding this sysfs node with low temperature values. | |
138 | ||
ca3de46b SG |
139 | config IMX_THERMAL |
140 | tristate "Temperature sensor driver for Freescale i.MX SoCs" | |
141 | depends on CPU_THERMAL | |
142 | depends on MFD_SYSCON | |
143 | depends on OF | |
144 | help | |
145 | Support for Temperature Monitor (TEMPMON) found on Freescale i.MX SoCs. | |
146 | It supports one critical trip point and one passive trip point. The | |
147 | cpufreq is used as the cooling device to throttle CPUs when the | |
148 | passive trip is crossed. | |
149 | ||
6a92c366 VF |
150 | config SPEAR_THERMAL |
151 | bool "SPEAr thermal sensor driver" | |
6a92c366 | 152 | depends on PLAT_SPEAR |
b9c7aff4 | 153 | depends on OF |
6a92c366 VF |
154 | help |
155 | Enable this to plug the SPEAr thermal sensor driver into the Linux | |
a8227948 | 156 | thermal framework. |
1e426ffd KM |
157 | |
158 | config RCAR_THERMAL | |
159 | tristate "Renesas R-Car thermal driver" | |
beeb5a1e | 160 | depends on ARCH_SHMOBILE || COMPILE_TEST |
d1c8b041 | 161 | depends on HAS_IOMEM |
1e426ffd KM |
162 | help |
163 | Enable this to plug the R-Car thermal sensor driver into the Linux | |
a8227948 | 164 | thermal framework. |
c48cbba6 | 165 | |
7060aa36 NI |
166 | config KIRKWOOD_THERMAL |
167 | tristate "Temperature sensor on Marvell Kirkwood SoCs" | |
575be653 | 168 | depends on MACH_KIRKWOOD |
7060aa36 NI |
169 | depends on OF |
170 | help | |
171 | Support for the Kirkwood thermal sensor driver into the Linux thermal | |
172 | framework. Only kirkwood 88F6282 and 88F6283 have this sensor. | |
173 | ||
74ffa64c AL |
174 | config DOVE_THERMAL |
175 | tristate "Temperature sensor on Marvell Dove SoCs" | |
b3dee390 | 176 | depends on ARCH_DOVE || MACH_DOVE |
74ffa64c AL |
177 | depends on OF |
178 | help | |
179 | Support for the Dove thermal sensor driver in the Linux thermal | |
180 | framework. | |
181 | ||
aa1acb04 | 182 | config DB8500_THERMAL |
183 | bool "DB8500 thermal management" | |
184 | depends on ARCH_U8500 | |
185 | default y | |
186 | help | |
187 | Adds DB8500 thermal management implementation according to the thermal | |
188 | management framework. A thermal zone with several trip points will be | |
189 | created. Cooling devices can be bound to the trip points to cool this | |
190 | thermal zone if trip points reached. | |
191 | ||
fa0d654c EG |
192 | config ARMADA_THERMAL |
193 | tristate "Armada 370/XP thermal management" | |
194 | depends on ARCH_MVEBU | |
195 | depends on OF | |
196 | help | |
197 | Enable this option if you want to have support for thermal management | |
198 | controller present in Armada 370 and Armada XP SoC. | |
199 | ||
aa1acb04 | 200 | config DB8500_CPUFREQ_COOLING |
201 | tristate "DB8500 cpufreq cooling" | |
202 | depends on ARCH_U8500 | |
203 | depends on CPU_THERMAL | |
204 | default y | |
205 | help | |
206 | Adds DB8500 cpufreq cooling devices, and these cooling devices can be | |
207 | bound to thermal zone trip points. When a trip point reached, the | |
208 | bound cpufreq cooling device turns active to set CPU frequency low to | |
209 | cool down the CPU. | |
a56757af | 210 | |
d6d71ee4 JP |
211 | config INTEL_POWERCLAMP |
212 | tristate "Intel PowerClamp idle injection driver" | |
213 | depends on THERMAL | |
214 | depends on X86 | |
215 | depends on CPU_SUP_INTEL | |
216 | help | |
217 | Enable this to enable Intel PowerClamp idle injection driver. This | |
218 | enforce idle time which results in more package C-state residency. The | |
219 | user interface is exposed via generic thermal framework. | |
220 | ||
f1a18a10 SP |
221 | config X86_PKG_TEMP_THERMAL |
222 | tristate "X86 package temperature thermal driver" | |
b3ba0206 | 223 | depends on X86_THERMAL_VECTOR |
f1a18a10 SP |
224 | select THERMAL_GOV_USER_SPACE |
225 | default m | |
226 | help | |
227 | Enable this to register CPU digital sensor for package temperature as | |
228 | thermal zone. Each package will have its own thermal zone. There are | |
229 | two trip points which can be set by user to get notifications via thermal | |
230 | notification methods. | |
231 | ||
bc40b5e3 SP |
232 | config INTEL_SOC_DTS_THERMAL |
233 | tristate "Intel SoCs DTS thermal driver" | |
234 | depends on X86 && IOSF_MBI | |
235 | help | |
236 | Enable this to register Intel SoCs (e.g. Bay Trail) platform digital | |
237 | temperature sensor (DTS). These SoCs have two additional DTSs in | |
238 | addition to DTSs on CPU cores. Each DTS will be registered as a | |
239 | thermal zone. There are two trip points. One of the trip point can | |
240 | be set by user mode programs to get notifications via Linux thermal | |
241 | notification methods.The other trip is a critical trip point, which | |
242 | was set by the driver based on the TJ MAX temperature. | |
243 | ||
3230bbfc | 244 | config INT340X_THERMAL |
816cab93 | 245 | tristate "ACPI INT340X thermal drivers" |
3230bbfc | 246 | depends on X86 && ACPI |
0ab15365 | 247 | select THERMAL_GOV_USER_SPACE |
52b1c69d | 248 | select ACPI_THERMAL_REL |
d8054749 | 249 | select ACPI_FAN |
3230bbfc ZR |
250 | help |
251 | Newer laptops and tablets that use ACPI may have thermal sensors and | |
252 | other devices with thermal control capabilities outside the core | |
253 | CPU/SOC, for thermal safety reasons. | |
254 | They are exposed for the OS to use via the INT3400 ACPI device object | |
255 | as the master, and INT3401~INT340B ACPI device objects as the slaves. | |
256 | Enable this to expose the temperature information and cooling ability | |
257 | from these objects to userspace via the normal thermal framework. | |
258 | This means that a wide range of applications and GUI widgets can show | |
259 | the information to the user or use this information for making | |
260 | decisions. For example, the Intel Thermal Daemon can use this | |
261 | information to allow the user to select his laptop to run without | |
262 | turning on the fans. | |
263 | ||
52b1c69d JP |
264 | config ACPI_THERMAL_REL |
265 | tristate | |
266 | depends on ACPI | |
267 | ||
eb982001 EV |
268 | menu "Texas Instruments thermal drivers" |
269 | source "drivers/thermal/ti-soc-thermal/Kconfig" | |
270 | endmenu | |
f157f596 | 271 | |
c6821378 | 272 | menu "Samsung thermal drivers" |
4de45817 | 273 | depends on ARCH_EXYNOS |
c6821378 ADK |
274 | source "drivers/thermal/samsung/Kconfig" |
275 | endmenu | |
276 | ||
60aef7ce LJ |
277 | menu "STMicroelectronics thermal drivers" |
278 | depends on ARCH_STI && OF | |
279 | source "drivers/thermal/st/Kconfig" | |
280 | endmenu | |
281 | ||
72e19897 | 282 | endif |