| What: /sys/bus/usb/devices/.../power/autosuspend |
| Date: March 2007 |
| KernelVersion: 2.6.21 |
| Contact: Alan Stern <stern@rowland.harvard.edu> |
| Description: |
| Each USB device directory will contain a file named |
| power/autosuspend. This file holds the time (in seconds) |
| the device must be idle before it will be autosuspended. |
| 0 means the device will be autosuspended as soon as |
| possible. Negative values will prevent the device from |
| being autosuspended at all, and writing a negative value |
| will resume the device if it is already suspended. |
| |
| The autosuspend delay for newly-created devices is set to |
| the value of the usbcore.autosuspend module parameter. |
| |
| What: /sys/bus/usb/devices/.../power/level |
| Date: March 2007 |
| KernelVersion: 2.6.21 |
| Contact: Alan Stern <stern@rowland.harvard.edu> |
| Description: |
| Each USB device directory will contain a file named |
| power/level. This file holds a power-level setting for |
| the device, one of "on", "auto", or "suspend". |
| |
| "on" means that the device is not allowed to autosuspend, |
| although normal suspends for system sleep will still |
| be honored. "auto" means the device will autosuspend |
| and autoresume in the usual manner, according to the |
| capabilities of its driver. "suspend" means the device |
| is forced into a suspended state and it will not autoresume |
| in response to I/O requests. However remote-wakeup requests |
| from the device may still be enabled (the remote-wakeup |
| setting is controlled separately by the power/wakeup |
| attribute). |
| |
| During normal use, devices should be left in the "auto" |
| level. The other levels are meant for administrative uses. |
| If you want to suspend a device immediately but leave it |
| free to wake up in response to I/O requests, you should |
| write "0" to power/autosuspend. |
| |
| What: /sys/bus/usb/devices/.../power/persist |
| Date: May 2007 |
| KernelVersion: 2.6.23 |
| Contact: Alan Stern <stern@rowland.harvard.edu> |
| Description: |
| If CONFIG_USB_PERSIST is set, then each USB device directory |
| will contain a file named power/persist. The file holds a |
| boolean value (0 or 1) indicating whether or not the |
| "USB-Persist" facility is enabled for the device. Since the |
| facility is inherently dangerous, it is disabled by default |
| for all devices except hubs. For more information, see |
| Documentation/usb/persist.txt. |
| |
| What: /sys/bus/usb/device/.../power/connected_duration |
| Date: January 2008 |
| KernelVersion: 2.6.25 |
| Contact: Sarah Sharp <sarah.a.sharp@intel.com> |
| Description: |
| If CONFIG_PM and CONFIG_USB_SUSPEND are enabled, then this file |
| is present. When read, it returns the total time (in msec) |
| that the USB device has been connected to the machine. This |
| file is read-only. |
| Users: |
| PowerTOP <power@bughost.org> |
| http://www.lesswatts.org/projects/powertop/ |
| |
| What: /sys/bus/usb/device/.../power/active_duration |
| Date: January 2008 |
| KernelVersion: 2.6.25 |
| Contact: Sarah Sharp <sarah.a.sharp@intel.com> |
| Description: |
| If CONFIG_PM and CONFIG_USB_SUSPEND are enabled, then this file |
| is present. When read, it returns the total time (in msec) |
| that the USB device has been active, i.e. not in a suspended |
| state. This file is read-only. |
| |
| Tools can use this file and the connected_duration file to |
| compute the percentage of time that a device has been active. |
| For example, |
| echo $((100 * `cat active_duration` / `cat connected_duration`)) |
| will give an integer percentage. Note that this does not |
| account for counter wrap. |
| Users: |
| PowerTOP <power@bughost.org> |
| http://www.lesswatts.org/projects/powertop/ |