Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
[sfrench/cifs-2.6.git] / Documentation / ABI / testing / sysfs-devices-power
1 What:           /sys/devices/.../power/
2 Date:           January 2009
3 Contact:        Rafael J. Wysocki <rjw@rjwysocki.net>
4 Description:
5                 The /sys/devices/.../power directory contains attributes
6                 allowing the user space to check and modify some power
7                 management related properties of given device.
8
9 What:           /sys/devices/.../power/wakeup
10 Date:           January 2009
11 Contact:        Rafael J. Wysocki <rjw@rjwysocki.net>
12 Description:
13                 The /sys/devices/.../power/wakeup attribute allows the user
14                 space to check if the device is enabled to wake up the system
15                 from sleep states, such as the memory sleep state (suspend to
16                 RAM) and hibernation (suspend to disk), and to enable or disable
17                 it to do that as desired.
18
19                 Some devices support "wakeup" events, which are hardware signals
20                 used to activate the system from a sleep state.  Such devices
21                 have one of the following two values for the sysfs power/wakeup
22                 file:
23
24                 + "enabled\n" to issue the events;
25                 + "disabled\n" not to do so;
26
27                 In that cases the user space can change the setting represented
28                 by the contents of this file by writing either "enabled", or
29                 "disabled" to it.
30
31                 For the devices that are not capable of generating system wakeup
32                 events this file is not present.  In that case the device cannot
33                 be enabled to wake up the system from sleep states.
34
35 What:           /sys/devices/.../power/control
36 Date:           January 2009
37 Contact:        Rafael J. Wysocki <rjw@rjwysocki.net>
38 Description:
39                 The /sys/devices/.../power/control attribute allows the user
40                 space to control the run-time power management of the device.
41
42                 All devices have one of the following two values for the
43                 power/control file:
44
45                 + "auto\n" to allow the device to be power managed at run time;
46                 + "on\n" to prevent the device from being power managed;
47
48                 The default for all devices is "auto", which means that they may
49                 be subject to automatic power management, depending on their
50                 drivers.  Changing this attribute to "on" prevents the driver
51                 from power managing the device at run time.  Doing that while
52                 the device is suspended causes it to be woken up.
53
54 What:           /sys/devices/.../power/async
55 Date:           January 2009
56 Contact:        Rafael J. Wysocki <rjw@rjwysocki.net>
57 Description:
58                 The /sys/devices/.../async attribute allows the user space to
59                 enable or diasble the device's suspend and resume callbacks to
60                 be executed asynchronously (ie. in separate threads, in parallel
61                 with the main suspend/resume thread) during system-wide power
62                 transitions (eg. suspend to RAM, hibernation).
63
64                 All devices have one of the following two values for the
65                 power/async file:
66
67                 + "enabled\n" to permit the asynchronous suspend/resume;
68                 + "disabled\n" to forbid it;
69
70                 The value of this attribute may be changed by writing either
71                 "enabled", or "disabled" to it.
72
73                 It generally is unsafe to permit the asynchronous suspend/resume
74                 of a device unless it is certain that all of the PM dependencies
75                 of the device are known to the PM core.  However, for some
76                 devices this attribute is set to "enabled" by bus type code or
77                 device drivers and in that cases it should be safe to leave the
78                 default value.
79
80 What:           /sys/devices/.../power/wakeup_count
81 Date:           September 2010
82 Contact:        Rafael J. Wysocki <rjw@rjwysocki.net>
83 Description:
84                 The /sys/devices/.../wakeup_count attribute contains the number
85                 of signaled wakeup events associated with the device.  This
86                 attribute is read-only.  If the device is not capable to wake up
87                 the system from sleep states, this attribute is not present.
88                 If the device is not enabled to wake up the system from sleep
89                 states, this attribute is empty.
90
91 What:           /sys/devices/.../power/wakeup_active_count
92 Date:           September 2010
93 Contact:        Rafael J. Wysocki <rjw@rjwysocki.net>
94 Description:
95                 The /sys/devices/.../wakeup_active_count attribute contains the
96                 number of times the processing of wakeup events associated with
97                 the device was completed (at the kernel level).  This attribute
98                 is read-only.  If the device is not capable to wake up the
99                 system from sleep states, this attribute is not present.  If
100                 the device is not enabled to wake up the system from sleep
101                 states, this attribute is empty.
102
103 What:           /sys/devices/.../power/wakeup_abort_count
104 Date:           February 2012
105 Contact:        Rafael J. Wysocki <rjw@rjwysocki.net>
106 Description:
107                 The /sys/devices/.../wakeup_abort_count attribute contains the
108                 number of times the processing of a wakeup event associated with
109                 the device might have aborted system transition into a sleep
110                 state in progress.  This attribute is read-only.  If the device
111                 is not capable to wake up the system from sleep states, this
112                 attribute is not present.  If the device is not enabled to wake
113                 up the system from sleep states, this attribute is empty.
114
115 What:           /sys/devices/.../power/wakeup_expire_count
116 Date:           February 2012
117 Contact:        Rafael J. Wysocki <rjw@rjwysocki.net>
118 Description:
119                 The /sys/devices/.../wakeup_expire_count attribute contains the
120                 number of times a wakeup event associated with the device has
121                 been reported with a timeout that expired.  This attribute is
122                 read-only.  If the device is not capable to wake up the system
123                 from sleep states, this attribute is not present.  If the
124                 device is not enabled to wake up the system from sleep states,
125                 this attribute is empty.
126
127 What:           /sys/devices/.../power/wakeup_active
128 Date:           September 2010
129 Contact:        Rafael J. Wysocki <rjw@rjwysocki.net>
130 Description:
131                 The /sys/devices/.../wakeup_active attribute contains either 1,
132                 or 0, depending on whether or not a wakeup event associated with
133                 the device is being processed (1).  This attribute is read-only.
134                 If the device is not capable to wake up the system from sleep
135                 states, this attribute is not present.  If the device is not
136                 enabled to wake up the system from sleep states, this attribute
137                 is empty.
138
139 What:           /sys/devices/.../power/wakeup_total_time_ms
140 Date:           September 2010
141 Contact:        Rafael J. Wysocki <rjw@rjwysocki.net>
142 Description:
143                 The /sys/devices/.../wakeup_total_time_ms attribute contains
144                 the total time of processing wakeup events associated with the
145                 device, in milliseconds.  This attribute is read-only.  If the
146                 device is not capable to wake up the system from sleep states,
147                 this attribute is not present.  If the device is not enabled to
148                 wake up the system from sleep states, this attribute is empty.
149
150 What:           /sys/devices/.../power/wakeup_max_time_ms
151 Date:           September 2010
152 Contact:        Rafael J. Wysocki <rjw@rjwysocki.net>
153 Description:
154                 The /sys/devices/.../wakeup_max_time_ms attribute contains
155                 the maximum time of processing a single wakeup event associated
156                 with the device, in milliseconds.  This attribute is read-only.
157                 If the device is not capable to wake up the system from sleep
158                 states, this attribute is not present.  If the device is not
159                 enabled to wake up the system from sleep states, this attribute
160                 is empty.
161
162 What:           /sys/devices/.../power/wakeup_last_time_ms
163 Date:           September 2010
164 Contact:        Rafael J. Wysocki <rjw@rjwysocki.net>
165 Description:
166                 The /sys/devices/.../wakeup_last_time_ms attribute contains
167                 the value of the monotonic clock corresponding to the time of
168                 signaling the last wakeup event associated with the device, in
169                 milliseconds.  This attribute is read-only.  If the device is
170                 not enabled to wake up the system from sleep states, this
171                 attribute is not present.  If the device is not enabled to wake
172                 up the system from sleep states, this attribute is empty.
173
174 What:           /sys/devices/.../power/wakeup_prevent_sleep_time_ms
175 Date:           February 2012
176 Contact:        Rafael J. Wysocki <rjw@rjwysocki.net>
177 Description:
178                 The /sys/devices/.../wakeup_prevent_sleep_time_ms attribute
179                 contains the total time the device has been preventing
180                 opportunistic transitions to sleep states from occurring.
181                 This attribute is read-only.  If the device is not capable to
182                 wake up the system from sleep states, this attribute is not
183                 present.  If the device is not enabled to wake up the system
184                 from sleep states, this attribute is empty.
185
186 What:           /sys/devices/.../power/autosuspend_delay_ms
187 Date:           September 2010
188 Contact:        Alan Stern <stern@rowland.harvard.edu>
189 Description:
190                 The /sys/devices/.../power/autosuspend_delay_ms attribute
191                 contains the autosuspend delay value (in milliseconds).  Some
192                 drivers do not want their device to suspend as soon as it
193                 becomes idle at run time; they want the device to remain
194                 inactive for a certain minimum period of time first.  That
195                 period is called the autosuspend delay.  Negative values will
196                 prevent the device from being suspended at run time (similar
197                 to writing "on" to the power/control attribute).  Values >=
198                 1000 will cause the autosuspend timer expiration to be rounded
199                 up to the nearest second.
200
201                 Not all drivers support this attribute.  If it isn't supported,
202                 attempts to read or write it will yield I/O errors.
203
204 What:           /sys/devices/.../power/pm_qos_resume_latency_us
205 Date:           March 2012
206 Contact:        Rafael J. Wysocki <rjw@rjwysocki.net>
207 Description:
208                 The /sys/devices/.../power/pm_qos_resume_latency_us attribute
209                 contains the PM QoS resume latency limit for the given device,
210                 which is the maximum allowed time it can take to resume the
211                 device, after it has been suspended at run time, from a resume
212                 request to the moment the device will be ready to process I/O,
213                 in microseconds.  If it is equal to 0, however, this means that
214                 the PM QoS resume latency may be arbitrary.
215
216                 Not all drivers support this attribute.  If it isn't supported,
217                 it is not present.
218
219                 This attribute has no effect on system-wide suspend/resume and
220                 hibernation.
221
222 What:           /sys/devices/.../power/pm_qos_latency_tolerance_us
223 Date:           January 2014
224 Contact:        Rafael J. Wysocki <rjw@rjwysocki.net>
225 Description:
226                 The /sys/devices/.../power/pm_qos_latency_tolerance_us attribute
227                 contains the PM QoS active state latency tolerance limit for the
228                 given device in microseconds.  That is the maximum memory access
229                 latency the device can suffer without any visible adverse
230                 effects on user space functionality.  If that value is the
231                 string "any", the latency does not matter to user space at all,
232                 but hardware should not be allowed to set the latency tolerance
233                 for the device automatically.
234
235                 Reading "auto" from this file means that the maximum memory
236                 access latency for the device may be determined automatically
237                 by the hardware as needed.  Writing "auto" to it allows the
238                 hardware to be switched to this mode if there are no other
239                 latency tolerance requirements from the kernel side.
240
241                 This attribute is only present if the feature controlled by it
242                 is supported by the hardware.
243
244                 This attribute has no effect on runtime suspend and resume of
245                 devices and on system-wide suspend/resume and hibernation.
246
247 What:           /sys/devices/.../power/pm_qos_no_power_off
248 Date:           September 2012
249 Contact:        Rafael J. Wysocki <rjw@rjwysocki.net>
250 Description:
251                 The /sys/devices/.../power/pm_qos_no_power_off attribute
252                 is used for manipulating the PM QoS "no power off" flag.  If
253                 set, this flag indicates to the kernel that power should not
254                 be removed entirely from the device.
255
256                 Not all drivers support this attribute.  If it isn't supported,
257                 it is not present.
258
259                 This attribute has no effect on system-wide suspend/resume and
260                 hibernation.
261
262 What:           /sys/devices/.../power/pm_qos_remote_wakeup
263 Date:           September 2012
264 Contact:        Rafael J. Wysocki <rjw@rjwysocki.net>
265 Description:
266                 The /sys/devices/.../power/pm_qos_remote_wakeup attribute
267                 is used for manipulating the PM QoS "remote wakeup required"
268                 flag.  If set, this flag indicates to the kernel that the
269                 device is a source of user events that have to be signaled from
270                 its low-power states.
271
272                 Not all drivers support this attribute.  If it isn't supported,
273                 it is not present.
274
275                 This attribute has no effect on system-wide suspend/resume and
276                 hibernation.