PM: Do not create wakeup sysfs files for devices that cannot wake up
[linux-2.6.git] / Documentation / ABI / testing / sysfs-devices-power
1 What:           /sys/devices/.../power/
2 Date:           January 2009
3 Contact:        Rafael J. Wysocki <rjw@sisk.pl>
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@sisk.pl>
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@sisk.pl>
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@sisk.pl>
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@sisk.pl>
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 enabled to wake up
87                 the system from sleep states, this attribute is not present.
88
89 What:           /sys/devices/.../power/wakeup_active_count
90 Date:           September 2010
91 Contact:        Rafael J. Wysocki <rjw@sisk.pl>
92 Description:
93                 The /sys/devices/.../wakeup_active_count attribute contains the
94                 number of times the processing of wakeup events associated with
95                 the device was completed (at the kernel level).  This attribute
96                 is read-only.  If the device is not enabled to wake up the
97                 system from sleep states, this attribute is not present.
98
99 What:           /sys/devices/.../power/wakeup_hit_count
100 Date:           September 2010
101 Contact:        Rafael J. Wysocki <rjw@sisk.pl>
102 Description:
103                 The /sys/devices/.../wakeup_hit_count attribute contains the
104                 number of times the processing of a wakeup event associated with
105                 the device might prevent the system from entering a sleep state.
106                 This attribute is read-only.  If the device is not enabled to
107                 wake up the system from sleep states, this attribute is not
108                 present.
109
110 What:           /sys/devices/.../power/wakeup_active
111 Date:           September 2010
112 Contact:        Rafael J. Wysocki <rjw@sisk.pl>
113 Description:
114                 The /sys/devices/.../wakeup_active attribute contains either 1,
115                 or 0, depending on whether or not a wakeup event associated with
116                 the device is being processed (1).  This attribute is read-only.
117                 If the device is not enabled to wake up the system from sleep
118                 states, this attribute is not present.
119
120 What:           /sys/devices/.../power/wakeup_total_time_ms
121 Date:           September 2010
122 Contact:        Rafael J. Wysocki <rjw@sisk.pl>
123 Description:
124                 The /sys/devices/.../wakeup_total_time_ms attribute contains
125                 the total time of processing wakeup events associated with the
126                 device, in milliseconds.  This attribute is read-only.  If the
127                 device is not enabled to wake up the system from sleep states,
128                 this attribute is not present.
129
130 What:           /sys/devices/.../power/wakeup_max_time_ms
131 Date:           September 2010
132 Contact:        Rafael J. Wysocki <rjw@sisk.pl>
133 Description:
134                 The /sys/devices/.../wakeup_max_time_ms attribute contains
135                 the maximum time of processing a single wakeup event associated
136                 with the device, in milliseconds.  This attribute is read-only.
137                 If the device is not enabled to wake up the system from sleep
138                 states, this attribute is not present.
139
140 What:           /sys/devices/.../power/wakeup_last_time_ms
141 Date:           September 2010
142 Contact:        Rafael J. Wysocki <rjw@sisk.pl>
143 Description:
144                 The /sys/devices/.../wakeup_last_time_ms attribute contains
145                 the value of the monotonic clock corresponding to the time of
146                 signaling the last wakeup event associated with the device, in
147                 milliseconds.  This attribute is read-only.  If the device is
148                 not enabled to wake up the system from sleep states, this
149                 attribute is not present.
150
151 What:           /sys/devices/.../power/autosuspend_delay_ms
152 Date:           September 2010
153 Contact:        Alan Stern <stern@rowland.harvard.edu>
154 Description:
155                 The /sys/devices/.../power/autosuspend_delay_ms attribute
156                 contains the autosuspend delay value (in milliseconds).  Some
157                 drivers do not want their device to suspend as soon as it
158                 becomes idle at run time; they want the device to remain
159                 inactive for a certain minimum period of time first.  That
160                 period is called the autosuspend delay.  Negative values will
161                 prevent the device from being suspended at run time (similar
162                 to writing "on" to the power/control attribute).  Values >=
163                 1000 will cause the autosuspend timer expiration to be rounded
164                 up to the nearest second.
165
166                 Not all drivers support this attribute.  If it isn't supported,
167                 attempts to read or write it will yield I/O errors.