xref: /linux/Documentation/ABI/testing/sysfs-class-thermal (revision be239684b18e1cdcafcf8c7face4a2f562c745ad)
1What:		/sys/class/thermal/thermal_zoneX/type
2Description:
3		Strings which represent the thermal zone type.
4		This is given by thermal zone driver as part of registration.
5		E.g: "acpitz" indicates it's an ACPI thermal device.
6		In order to keep it consistent with hwmon sys attribute; this
7		should be a short, lowercase string, not containing spaces nor
8		dashes.
9
10		RO, Required
11
12What:		/sys/class/thermal/thermal_zoneX/temp
13Description:
14		Current temperature as reported by thermal zone (sensor).
15
16		Unit: millidegree Celsius
17
18		RO, Required
19
20What:		/sys/class/thermal/thermal_zoneX/mode
21Description:
22		One of the predefined values in [enabled, disabled].
23		This file gives information about the algorithm that is
24		currently managing the thermal zone. It can be either default
25		kernel based algorithm or user space application.
26
27		enabled
28				enable Kernel Thermal management.
29		disabled
30				Preventing kernel thermal zone driver actions upon
31				trip points so that user application can take full
32				charge of the thermal management.
33
34		RW, Optional
35
36What:		/sys/class/thermal/thermal_zoneX/policy
37Description:
38		One of the various thermal governors used for a particular zone.
39
40		RW, Required
41
42What:		/sys/class/thermal/thermal_zoneX/available_policies
43Description:
44		Available thermal governors which can be used for a
45		particular zone.
46
47		RO, Required
48
49What:		/sys/class/thermal/thermal_zoneX/trip_point_Y_temp
50Description:
51		The temperature above which trip point will be fired.
52
53		Unit: millidegree Celsius
54
55		RO, Optional
56
57What:		/sys/class/thermal/thermal_zoneX/trip_point_Y_type
58Description:
59		Strings which indicate the type of the trip point.
60
61		E.g. it can be one of critical, hot, passive, `active[0-*]`
62		for ACPI thermal zone.
63
64		RO, Optional
65
66What:		/sys/class/thermal/thermal_zoneX/trip_point_Y_hyst
67Description:
68		The hysteresis value for a trip point, represented as an
69		integer.
70
71		Unit: Celsius
72
73		RW, Optional
74
75What:		/sys/class/thermal/thermal_zoneX/cdevY
76Description:
77	Sysfs link to the thermal cooling device node where the sys I/F
78	for cooling device throttling control represents.
79
80	RO, Optional
81
82What:		/sys/class/thermal/thermal_zoneX/cdevY_trip_point
83Description:
84		The trip point in this thermal zone which `cdev[0-*]` is
85		associated with; -1 means the cooling device is not
86		associated with any trip point.
87
88		RO, Optional
89
90What:		/sys/class/thermal/thermal_zoneX/cdevY_weight
91Description:
92		The influence of `cdev[0-*]` in this thermal zone. This value
93		is relative to the rest of cooling devices in the thermal
94		zone. For example, if a cooling device has a weight double
95		than that of other, it's twice as effective in cooling the
96		thermal zone.
97
98		RW, Optional
99
100What:		/sys/class/thermal/thermal_zoneX/emul_temp
101Description:
102		Interface to set the emulated temperature method in thermal zone
103		(sensor). After setting this temperature, the thermal zone may
104		pass this temperature to platform emulation function if
105		registered or cache it locally. This is useful in debugging
106		different temperature threshold and its associated cooling
107		action. This is write only node and writing 0 on this node
108		should disable emulation.
109
110		Unit: millidegree Celsius
111
112		WO, Optional
113
114		WARNING:
115		    Be careful while enabling this option on production systems,
116		    because userland can easily disable the thermal policy by simply
117		    flooding this sysfs node with low temperature values.
118
119
120What:		/sys/class/thermal/thermal_zoneX/k_d
121Description:
122		The derivative term of the power allocator governor's PID
123		controller. For more information see
124		Documentation/driver-api/thermal/power_allocator.rst
125
126		RW, Optional
127
128What:		/sys/class/thermal/thermal_zoneX/k_i
129Description:
130		The integral term of the power allocator governor's PID
131		controller. This term allows the PID controller to compensate
132		for long term drift. For more information see
133		Documentation/driver-api/thermal/power_allocator.rst
134
135		RW, Optional
136
137What:		/sys/class/thermal/thermal_zoneX/k_po
138Description:
139		The proportional term of the power allocator governor's PID
140		controller during temperature overshoot. Temperature overshoot
141		is when the current temperature is above the "desired
142		temperature" trip point. For more information see
143		Documentation/driver-api/thermal/power_allocator.rst
144
145		RW, Optional
146
147What:		/sys/class/thermal/thermal_zoneX/k_pu
148Description:
149		The proportional term of the power allocator governor's PID
150		controller during temperature undershoot. Temperature undershoot
151		is when the current temperature is below the "desired
152		temperature" trip point. For more information see
153		Documentation/driver-api/thermal/power_allocator.rst
154
155		RW, Optional
156
157What:		/sys/class/thermal/thermal_zoneX/integral_cutoff
158Description:
159		Temperature offset from the desired temperature trip point
160		above which the integral term of the power allocator
161		governor's PID controller starts accumulating errors. For
162		example, if integral_cutoff is 0, then the integral term only
163		accumulates error when temperature is above the desired
164		temperature trip point. For more information see
165		Documentation/driver-api/thermal/power_allocator.rst
166
167		Unit: millidegree Celsius
168
169		RW, Optional
170
171What:		/sys/class/thermal/thermal_zoneX/slope
172Description:
173		The slope constant used in a linear extrapolation model
174		to determine a hotspot temperature based off the sensor's
175		raw readings. It is up to the device driver to determine
176		the usage of these values.
177
178		RW, Optional
179
180What:		/sys/class/thermal/thermal_zoneX/offset
181Description:
182		The offset constant used in a linear extrapolation model
183		to determine a hotspot temperature based off the sensor's
184		raw readings. It is up to the device driver to determine
185		the usage of these values.
186
187		RW, Optional
188
189What:		/sys/class/thermal/thermal_zoneX/sustainable_power
190Description:
191		An estimate of the sustained power that can be dissipated by
192		the thermal zone. Used by the power allocator governor. For
193		more information see
194		Documentation/driver-api/thermal/power_allocator.rst
195
196		Unit: milliwatts
197
198		RW, Optional
199
200What:		/sys/class/thermal/cooling_deviceX/type
201Description:
202		String which represents the type of device, e.g:
203
204		- for generic ACPI: should be "Fan", "Processor" or "LCD"
205		- for memory controller device on intel_menlow platform:
206		  should be "Memory controller".
207
208		RO, Required
209
210What:		/sys/class/thermal/cooling_deviceX/max_state
211Description:
212		The maximum permissible cooling state of this cooling device.
213
214		RO, Required
215
216What:		/sys/class/thermal/cooling_deviceX/cur_state
217Description:
218		The current cooling state of this cooling device.
219		The value can any integer numbers between 0 and max_state:
220
221		- cur_state == 0 means no cooling
222		- cur_state == max_state means the maximum cooling.
223
224		RW, Required
225
226What:		/sys/class/thermal/cooling_deviceX/stats/reset
227Description:
228		Writing any value resets the cooling device's statistics.
229
230		WO, Required
231
232What:		/sys/class/thermal/cooling_deviceX/stats/time_in_state_ms:
233Description:
234		The amount of time spent by the cooling device in various
235		cooling states. The output will have "<state> <time>" pair
236		in each line, which will mean this cooling device spent <time>
237		msec of time at <state>.
238
239		Output will have one line for each of the supported states.
240
241		RO, Required
242
243What:		/sys/class/thermal/cooling_deviceX/stats/total_trans
244Description:
245		A single positive value showing the total number of times
246		the state of a cooling device is changed.
247
248		RO, Required
249
250What:		/sys/class/thermal/cooling_deviceX/stats/trans_table
251Description:
252		This gives fine grained information about all the cooling state
253		transitions. The cat output here is a two dimensional matrix,
254		where an entry <i,j> (row i, column j) represents the number
255		of transitions from State_i to State_j. If the transition
256		table is bigger than PAGE_SIZE, reading this will return
257		an -EFBIG error.
258
259		RO, Required
260