0001 What: /sys/devices/.../power/
0002 Date: January 2009
0003 Contact: Rafael J. Wysocki <rjw@rjwysocki.net>
0004 Description:
0005 The /sys/devices/.../power directory contains attributes
0006 allowing the user space to check and modify some power
0007 management related properties of given device.
0008
0009 What: /sys/devices/.../power/wakeup
0010 Date: January 2009
0011 Contact: Rafael J. Wysocki <rjw@rjwysocki.net>
0012 Description:
0013 The /sys/devices/.../power/wakeup attribute allows the user
0014 space to check if the device is enabled to wake up the system
0015 from sleep states, such as the memory sleep state (suspend to
0016 RAM) and hibernation (suspend to disk), and to enable or disable
0017 it to do that as desired.
0018
0019 Some devices support "wakeup" events, which are hardware signals
0020 used to activate the system from a sleep state. Such devices
0021 have one of the following two values for the sysfs power/wakeup
0022 file:
0023
0024 + "enabled\n" to issue the events;
0025 + "disabled\n" not to do so;
0026
0027 In that cases the user space can change the setting represented
0028 by the contents of this file by writing either "enabled", or
0029 "disabled" to it.
0030
0031 For the devices that are not capable of generating system wakeup
0032 events this file is not present. In that case the device cannot
0033 be enabled to wake up the system from sleep states.
0034
0035 What: /sys/devices/.../power/control
0036 Date: January 2009
0037 Contact: Rafael J. Wysocki <rjw@rjwysocki.net>
0038 Description:
0039 The /sys/devices/.../power/control attribute allows the user
0040 space to control the run-time power management of the device.
0041
0042 All devices have one of the following two values for the
0043 power/control file:
0044
0045 + "auto\n" to allow the device to be power managed at run time;
0046 + "on\n" to prevent the device from being power managed;
0047
0048 The default for all devices is "auto", which means that they may
0049 be subject to automatic power management, depending on their
0050 drivers. Changing this attribute to "on" prevents the driver
0051 from power managing the device at run time. Doing that while
0052 the device is suspended causes it to be woken up.
0053
0054 What: /sys/devices/.../power/async
0055 Date: January 2009
0056 Contact: Rafael J. Wysocki <rjw@rjwysocki.net>
0057 Description:
0058 The /sys/devices/.../async attribute allows the user space to
0059 enable or diasble the device's suspend and resume callbacks to
0060 be executed asynchronously (ie. in separate threads, in parallel
0061 with the main suspend/resume thread) during system-wide power
0062 transitions (eg. suspend to RAM, hibernation).
0063
0064 All devices have one of the following two values for the
0065 power/async file:
0066
0067 + "enabled\n" to permit the asynchronous suspend/resume;
0068 + "disabled\n" to forbid it;
0069
0070 The value of this attribute may be changed by writing either
0071 "enabled", or "disabled" to it.
0072
0073 It generally is unsafe to permit the asynchronous suspend/resume
0074 of a device unless it is certain that all of the PM dependencies
0075 of the device are known to the PM core. However, for some
0076 devices this attribute is set to "enabled" by bus type code or
0077 device drivers and in that cases it should be safe to leave the
0078 default value.
0079
0080 What: /sys/devices/.../power/wakeup_count
0081 Date: September 2010
0082 Contact: Rafael J. Wysocki <rjw@rjwysocki.net>
0083 Description:
0084 The /sys/devices/.../wakeup_count attribute contains the number
0085 of signaled wakeup events associated with the device. This
0086 attribute is read-only. If the device is not capable to wake up
0087 the system from sleep states, this attribute is not present.
0088 If the device is not enabled to wake up the system from sleep
0089 states, this attribute is empty.
0090
0091 What: /sys/devices/.../power/wakeup_active_count
0092 Date: September 2010
0093 Contact: Rafael J. Wysocki <rjw@rjwysocki.net>
0094 Description:
0095 The /sys/devices/.../wakeup_active_count attribute contains the
0096 number of times the processing of wakeup events associated with
0097 the device was completed (at the kernel level). This attribute
0098 is read-only. If the device is not capable to wake up the
0099 system from sleep states, this attribute is not present. If
0100 the device is not enabled to wake up the system from sleep
0101 states, this attribute is empty.
0102
0103 What: /sys/devices/.../power/wakeup_abort_count
0104 Date: February 2012
0105 Contact: Rafael J. Wysocki <rjw@rjwysocki.net>
0106 Description:
0107 The /sys/devices/.../wakeup_abort_count attribute contains the
0108 number of times the processing of a wakeup event associated with
0109 the device might have aborted system transition into a sleep
0110 state in progress. This attribute is read-only. If the device
0111 is not capable to wake up the system from sleep states, this
0112 attribute is not present. If the device is not enabled to wake
0113 up the system from sleep states, this attribute is empty.
0114
0115 What: /sys/devices/.../power/wakeup_expire_count
0116 Date: February 2012
0117 Contact: Rafael J. Wysocki <rjw@rjwysocki.net>
0118 Description:
0119 The /sys/devices/.../wakeup_expire_count attribute contains the
0120 number of times a wakeup event associated with the device has
0121 been reported with a timeout that expired. This attribute is
0122 read-only. If the device is not capable to wake up the system
0123 from sleep states, this attribute is not present. If the
0124 device is not enabled to wake up the system from sleep states,
0125 this attribute is empty.
0126
0127 What: /sys/devices/.../power/wakeup_active
0128 Date: September 2010
0129 Contact: Rafael J. Wysocki <rjw@rjwysocki.net>
0130 Description:
0131 The /sys/devices/.../wakeup_active attribute contains either 1,
0132 or 0, depending on whether or not a wakeup event associated with
0133 the device is being processed (1). This attribute is read-only.
0134 If the device is not capable to wake up the system from sleep
0135 states, this attribute is not present. If the device is not
0136 enabled to wake up the system from sleep states, this attribute
0137 is empty.
0138
0139 What: /sys/devices/.../power/wakeup_total_time_ms
0140 Date: September 2010
0141 Contact: Rafael J. Wysocki <rjw@rjwysocki.net>
0142 Description:
0143 The /sys/devices/.../wakeup_total_time_ms attribute contains
0144 the total time of processing wakeup events associated with the
0145 device, in milliseconds. This attribute is read-only. If the
0146 device is not capable to wake up the system from sleep states,
0147 this attribute is not present. If the device is not enabled to
0148 wake up the system from sleep states, this attribute is empty.
0149
0150 What: /sys/devices/.../power/wakeup_max_time_ms
0151 Date: September 2010
0152 Contact: Rafael J. Wysocki <rjw@rjwysocki.net>
0153 Description:
0154 The /sys/devices/.../wakeup_max_time_ms attribute contains
0155 the maximum time of processing a single wakeup event associated
0156 with the device, in milliseconds. This attribute is read-only.
0157 If the device is not capable to wake up the system from sleep
0158 states, this attribute is not present. If the device is not
0159 enabled to wake up the system from sleep states, this attribute
0160 is empty.
0161
0162 What: /sys/devices/.../power/wakeup_last_time_ms
0163 Date: September 2010
0164 Contact: Rafael J. Wysocki <rjw@rjwysocki.net>
0165 Description:
0166 The /sys/devices/.../wakeup_last_time_ms attribute contains
0167 the value of the monotonic clock corresponding to the time of
0168 signaling the last wakeup event associated with the device, in
0169 milliseconds. This attribute is read-only. If the device is
0170 not enabled to wake up the system from sleep states, this
0171 attribute is not present. If the device is not enabled to wake
0172 up the system from sleep states, this attribute is empty.
0173
0174 What: /sys/devices/.../power/wakeup_prevent_sleep_time_ms
0175 Date: February 2012
0176 Contact: Rafael J. Wysocki <rjw@rjwysocki.net>
0177 Description:
0178 The /sys/devices/.../wakeup_prevent_sleep_time_ms attribute
0179 contains the total time the device has been preventing
0180 opportunistic transitions to sleep states from occurring.
0181 This attribute is read-only. If the device is not capable to
0182 wake up the system from sleep states, this attribute is not
0183 present. If the device is not enabled to wake up the system
0184 from sleep states, this attribute is empty.
0185
0186 What: /sys/devices/.../power/autosuspend_delay_ms
0187 Date: September 2010
0188 Contact: Alan Stern <stern@rowland.harvard.edu>
0189 Description:
0190 The /sys/devices/.../power/autosuspend_delay_ms attribute
0191 contains the autosuspend delay value (in milliseconds). Some
0192 drivers do not want their device to suspend as soon as it
0193 becomes idle at run time; they want the device to remain
0194 inactive for a certain minimum period of time first. That
0195 period is called the autosuspend delay. Negative values will
0196 prevent the device from being suspended at run time (similar
0197 to writing "on" to the power/control attribute). Values >=
0198 1000 will cause the autosuspend timer expiration to be rounded
0199 up to the nearest second.
0200
0201 Not all drivers support this attribute. If it isn't supported,
0202 attempts to read or write it will yield I/O errors.
0203
0204 What: /sys/devices/.../power/pm_qos_resume_latency_us
0205 Date: March 2012
0206 Contact: Rafael J. Wysocki <rjw@rjwysocki.net>
0207 Description:
0208 The /sys/devices/.../power/pm_qos_resume_latency_us attribute
0209 contains the PM QoS resume latency limit for the given device,
0210 which is the maximum allowed time it can take to resume the
0211 device, after it has been suspended at run time, from a resume
0212 request to the moment the device will be ready to process I/O,
0213 in microseconds. If it is equal to 0, however, this means that
0214 the PM QoS resume latency may be arbitrary and the special value
0215 "n/a" means that user space cannot accept any resume latency at
0216 all for the given device.
0217
0218 Not all drivers support this attribute. If it isn't supported,
0219 it is not present.
0220
0221 This attribute has no effect on system-wide suspend/resume and
0222 hibernation.
0223
0224 What: /sys/devices/.../power/pm_qos_latency_tolerance_us
0225 Date: January 2014
0226 Contact: Rafael J. Wysocki <rjw@rjwysocki.net>
0227 Description:
0228 The /sys/devices/.../power/pm_qos_latency_tolerance_us attribute
0229 contains the PM QoS active state latency tolerance limit for the
0230 given device in microseconds. That is the maximum memory access
0231 latency the device can suffer without any visible adverse
0232 effects on user space functionality. If that value is the
0233 string "any", the latency does not matter to user space at all,
0234 but hardware should not be allowed to set the latency tolerance
0235 for the device automatically.
0236
0237 Reading "auto" from this file means that the maximum memory
0238 access latency for the device may be determined automatically
0239 by the hardware as needed. Writing "auto" to it allows the
0240 hardware to be switched to this mode if there are no other
0241 latency tolerance requirements from the kernel side.
0242
0243 This attribute is only present if the feature controlled by it
0244 is supported by the hardware.
0245
0246 This attribute has no effect on runtime suspend and resume of
0247 devices and on system-wide suspend/resume and hibernation.
0248
0249 What: /sys/devices/.../power/pm_qos_no_power_off
0250 Date: September 2012
0251 Contact: Rafael J. Wysocki <rjw@rjwysocki.net>
0252 Description:
0253 The /sys/devices/.../power/pm_qos_no_power_off attribute
0254 is used for manipulating the PM QoS "no power off" flag. If
0255 set, this flag indicates to the kernel that power should not
0256 be removed entirely from the device.
0257
0258 Not all drivers support this attribute. If it isn't supported,
0259 it is not present.
0260
0261 This attribute has no effect on system-wide suspend/resume and
0262 hibernation.
0263
0264 What: /sys/devices/.../power/runtime_status
0265 Date: April 2010
0266 Contact: Rafael J. Wysocki <rjw@rjwysocki.net>
0267 Description:
0268 The /sys/devices/.../power/runtime_status attribute contains
0269 the current runtime PM status of the device, which may be
0270 "suspended", "suspending", "resuming", "active", "error" (fatal
0271 error), or "unsupported" (runtime PM is disabled).
0272
0273 What: /sys/devices/.../power/runtime_active_time
0274 Date: Jul 2010
0275 Contact: Arjan van de Ven <arjan@linux.intel.com>
0276 Description:
0277 Reports the total time that the device has been active.
0278 Used for runtime PM statistics.
0279
0280 What: /sys/devices/.../power/runtime_suspended_time
0281 Date: Jul 2010
0282 Contact: Arjan van de Ven <arjan@linux.intel.com>
0283 Description:
0284 Reports total time that the device has been suspended.
0285 Used for runtime PM statistics.
0286
0287 What: /sys/devices/.../power/runtime_usage
0288 Date: Apr 2010
0289 Contact: Dominik Brodowski <linux@dominikbrodowski.net>
0290 Description:
0291 Reports the runtime PM usage count of a device.
0292
0293 What: /sys/devices/.../power/runtime_enabled
0294 Date: Apr 2010
0295 Contact: Dominik Brodowski <linux@dominikbrodowski.net>
0296 Description:
0297 Is runtime PM enabled for this device?
0298 States are "enabled", "disabled", "forbidden" or a
0299 combination of the latter two.
0300
0301 What: /sys/devices/.../power/runtime_active_kids
0302 Date: Apr 2010
0303 Contact: Dominik Brodowski <linux@dominikbrodowski.net>
0304 Description:
0305 Reports the runtime PM children usage count of a device, or
0306 0 if the children will be ignored.
0307