Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux
[linux-drm-fsl-dcu.git] / drivers / thermal / Kconfig
1 #
2 # Generic thermal sysfs drivers configuration
3 #
4
5 menuconfig THERMAL
6         tristate "Generic Thermal sysfs driver"
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.
11           Each thermal zone contains its own temperature, trip points,
12           cooling devices.
13           All platforms with ACPI thermal support can use this driver.
14           If you want this support, you should say Y or M here.
15
16 if THERMAL
17
18 config THERMAL_HWMON
19         bool
20         prompt "Expose thermal sensors as hwmon device"
21         depends on HWMON=y || HWMON=THERMAL
22         default y
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.
31
32 choice
33         prompt "Default Thermal governor"
34         default THERMAL_DEFAULT_GOV_STEP_WISE
35         help
36           This option sets which thermal governor shall be loaded at
37           startup. If in doubt, select 'step_wise'.
38
39 config THERMAL_DEFAULT_GOV_STEP_WISE
40         bool "step_wise"
41         select THERMAL_GOV_STEP_WISE
42         help
43           Use the step_wise governor as default. This throttles the
44           devices one step at a time.
45
46 config THERMAL_DEFAULT_GOV_FAIR_SHARE
47         bool "fair_share"
48         select THERMAL_GOV_FAIR_SHARE
49         help
50           Use the fair_share governor as default. This throttles the
51           devices based on their 'contribution' to a zone. The
52           contribution should be provided through platform data.
53
54 config THERMAL_DEFAULT_GOV_USER_SPACE
55         bool "user_space"
56         select THERMAL_GOV_USER_SPACE
57         help
58           Select this if you want to let the user space manage the
59           platform thermals.
60
61 endchoice
62
63 config THERMAL_GOV_FAIR_SHARE
64         bool "Fair-share thermal governor"
65         help
66           Enable this to manage platform thermals using fair-share governor.
67
68 config THERMAL_GOV_STEP_WISE
69         bool "Step_wise thermal governor"
70         help
71           Enable this to manage platform thermals using a simple linear
72           governor.
73
74 config THERMAL_GOV_USER_SPACE
75         bool "User_space thermal governor"
76         help
77           Enable this to let the user space manage the platform thermals.
78
79 config CPU_THERMAL
80         bool "generic cpu cooling support"
81         depends on CPU_FREQ
82         help
83           This implements the generic cpu cooling mechanism through frequency
84           reduction. An ACPI version of this already exists
85           (drivers/acpi/processor_thermal.c).
86           This will be useful for platforms using the generic thermal interface
87           and not the ACPI interface.
88
89           If you want this support, you should say Y here.
90
91 config THERMAL_EMULATION
92         bool "Thermal emulation mode support"
93         help
94           Enable this option to make a emul_temp sysfs node in thermal zone
95           directory to support temperature emulation. With emulation sysfs node,
96           user can manually input temperature and test the different trip
97           threshold behaviour for simulation purpose.
98
99           WARNING: Be careful while enabling this option on production systems,
100           because userland can easily disable the thermal policy by simply
101           flooding this sysfs node with low temperature values.
102
103 config IMX_THERMAL
104         tristate "Temperature sensor driver for Freescale i.MX SoCs"
105         depends on CPU_THERMAL
106         depends on MFD_SYSCON
107         depends on OF
108         help
109           Support for Temperature Monitor (TEMPMON) found on Freescale i.MX SoCs.
110           It supports one critical trip point and one passive trip point.  The
111           cpufreq is used as the cooling device to throttle CPUs when the
112           passive trip is crossed.
113
114 config SPEAR_THERMAL
115         bool "SPEAr thermal sensor driver"
116         depends on PLAT_SPEAR
117         depends on OF
118         help
119           Enable this to plug the SPEAr thermal sensor driver into the Linux
120           thermal framework.
121
122 config RCAR_THERMAL
123         tristate "Renesas R-Car thermal driver"
124         depends on ARCH_SHMOBILE
125         help
126           Enable this to plug the R-Car thermal sensor driver into the Linux
127           thermal framework.
128
129 config KIRKWOOD_THERMAL
130         tristate "Temperature sensor on Marvell Kirkwood SoCs"
131         depends on ARCH_KIRKWOOD
132         depends on OF
133         help
134           Support for the Kirkwood thermal sensor driver into the Linux thermal
135           framework. Only kirkwood 88F6282 and 88F6283 have this sensor.
136
137 config DOVE_THERMAL
138         tristate "Temperature sensor on Marvell Dove SoCs"
139         depends on ARCH_DOVE
140         depends on OF
141         help
142           Support for the Dove thermal sensor driver in the Linux thermal
143           framework.
144
145 config DB8500_THERMAL
146         bool "DB8500 thermal management"
147         depends on ARCH_U8500
148         default y
149         help
150           Adds DB8500 thermal management implementation according to the thermal
151           management framework. A thermal zone with several trip points will be
152           created. Cooling devices can be bound to the trip points to cool this
153           thermal zone if trip points reached.
154
155 config ARMADA_THERMAL
156         tristate "Armada 370/XP thermal management"
157         depends on ARCH_MVEBU
158         depends on OF
159         help
160           Enable this option if you want to have support for thermal management
161           controller present in Armada 370 and Armada XP SoC.
162
163 config DB8500_CPUFREQ_COOLING
164         tristate "DB8500 cpufreq cooling"
165         depends on ARCH_U8500
166         depends on CPU_THERMAL
167         default y
168         help
169           Adds DB8500 cpufreq cooling devices, and these cooling devices can be
170           bound to thermal zone trip points. When a trip point reached, the
171           bound cpufreq cooling device turns active to set CPU frequency low to
172           cool down the CPU.
173
174 config INTEL_POWERCLAMP
175         tristate "Intel PowerClamp idle injection driver"
176         depends on THERMAL
177         depends on X86
178         depends on CPU_SUP_INTEL
179         help
180           Enable this to enable Intel PowerClamp idle injection driver. This
181           enforce idle time which results in more package C-state residency. The
182           user interface is exposed via generic thermal framework.
183
184 config X86_PKG_TEMP_THERMAL
185         tristate "X86 package temperature thermal driver"
186         depends on X86_THERMAL_VECTOR
187         select THERMAL_GOV_USER_SPACE
188         default m
189         help
190           Enable this to register CPU digital sensor for package temperature as
191           thermal zone. Each package will have its own thermal zone. There are
192           two trip points which can be set by user to get notifications via thermal
193           notification methods.
194
195 menu "Texas Instruments thermal drivers"
196 source "drivers/thermal/ti-soc-thermal/Kconfig"
197 endmenu
198
199 menu "Samsung thermal drivers"
200 depends on PLAT_SAMSUNG
201 source "drivers/thermal/samsung/Kconfig"
202 endmenu
203
204 endif