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