1What:		/sys/bus/usb/devices/.../power/autosuspend
2Date:		March 2007
3KernelVersion:	2.6.21
4Contact:	Alan Stern <stern@rowland.harvard.edu>
5Description:
6		Each USB device directory will contain a file named
7		power/autosuspend.  This file holds the time (in seconds)
8		the device must be idle before it will be autosuspended.
9		0 means the device will be autosuspended as soon as
10		possible.  Negative values will prevent the device from
11		being autosuspended at all, and writing a negative value
12		will resume the device if it is already suspended.
13
14		The autosuspend delay for newly-created devices is set to
15		the value of the usbcore.autosuspend module parameter.
16
17What:		/sys/bus/usb/devices/.../power/level
18Date:		March 2007
19KernelVersion:	2.6.21
20Contact:	Alan Stern <stern@rowland.harvard.edu>
21Description:
22		Each USB device directory will contain a file named
23		power/level.  This file holds a power-level setting for
24		the device, one of "on", "auto", or "suspend".
25
26		"on" means that the device is not allowed to autosuspend,
27		although normal suspends for system sleep will still
28		be honored.  "auto" means the device will autosuspend
29		and autoresume in the usual manner, according to the
30		capabilities of its driver.  "suspend" means the device
31		is forced into a suspended state and it will not autoresume
32		in response to I/O requests.  However remote-wakeup requests
33		from the device may still be enabled (the remote-wakeup
34		setting is controlled separately by the power/wakeup
35		attribute).
36
37		During normal use, devices should be left in the "auto"
38		level.  The other levels are meant for administrative uses.
39		If you want to suspend a device immediately but leave it
40		free to wake up in response to I/O requests, you should
41		write "0" to power/autosuspend.
42
43What:		/sys/bus/usb/devices/.../power/persist
44Date:		May 2007
45KernelVersion:	2.6.23
46Contact:	Alan Stern <stern@rowland.harvard.edu>
47Description:
48		If CONFIG_USB_PERSIST is set, then each USB device directory
49		will contain a file named power/persist.  The file holds a
50		boolean value (0 or 1) indicating whether or not the
51		"USB-Persist" facility is enabled for the device.  Since the
52		facility is inherently dangerous, it is disabled by default
53		for all devices except hubs.  For more information, see
54		Documentation/usb/persist.txt.
55
56What:		/sys/bus/usb/device/.../power/connected_duration
57Date:		January 2008
58KernelVersion:	2.6.25
59Contact:	Sarah Sharp <sarah.a.sharp@intel.com>
60Description:
61		If CONFIG_PM and CONFIG_USB_SUSPEND are enabled, then this file
62		is present.  When read, it returns the total time (in msec)
63		that the USB device has been connected to the machine.  This
64		file is read-only.
65Users:
66		PowerTOP <power@bughost.org>
67		http://www.lesswatts.org/projects/powertop/
68
69What:		/sys/bus/usb/device/.../power/active_duration
70Date:		January 2008
71KernelVersion:	2.6.25
72Contact:	Sarah Sharp <sarah.a.sharp@intel.com>
73Description:
74		If CONFIG_PM and CONFIG_USB_SUSPEND are enabled, then this file
75		is present.  When read, it returns the total time (in msec)
76		that the USB device has been active, i.e. not in a suspended
77		state.  This file is read-only.
78
79		Tools can use this file and the connected_duration file to
80		compute the percentage of time that a device has been active.
81		For example,
82		echo $((100 * `cat active_duration` / `cat connected_duration`))
83		will give an integer percentage.  Note that this does not
84		account for counter wrap.
85Users:
86		PowerTOP <power@bughost.org>
87		http://www.lesswatts.org/projects/powertop/
88
89What:		/sys/bus/usb/device/<busnum>-<devnum>...:<config num>-<interface num>/supports_autosuspend
90Date:		January 2008
91KernelVersion:	2.6.27
92Contact:	Sarah Sharp <sarah.a.sharp@intel.com>
93Description:
94		When read, this file returns 1 if the interface driver
95		for this interface supports autosuspend.  It also
96		returns 1 if no driver has claimed this interface, as an
97		unclaimed interface will not stop the device from being
98		autosuspended if all other interface drivers are idle.
99		The file returns 0 if autosuspend support has not been
100		added to the driver.
101Users:
102		USB PM tool
103		git://git.moblin.org/users/sarah/usb-pm-tool/
104
105What:		/sys/bus/usb/device/.../authorized
106Date:		July 2008
107KernelVersion:	2.6.26
108Contact:	David Vrabel <david.vrabel@csr.com>
109Description:
110		Authorized devices are available for use by device
111		drivers, non-authorized one are not.  By default, wired
112		USB devices are authorized.
113
114		Certified Wireless USB devices are not authorized
115		initially and should be (by writing 1) after the
116		device has been authenticated.
117
118What:		/sys/bus/usb/device/.../wusb_cdid
119Date:		July 2008
120KernelVersion:	2.6.27
121Contact:	David Vrabel <david.vrabel@csr.com>
122Description:
123		For Certified Wireless USB devices only.
124
125		A devices's CDID, as 16 space-separated hex octets.
126
127What:		/sys/bus/usb/device/.../wusb_ck
128Date:		July 2008
129KernelVersion:	2.6.27
130Contact:	David Vrabel <david.vrabel@csr.com>
131Description:
132		For Certified Wireless USB devices only.
133
134		Write the device's connection key (CK) to start the
135		authentication of the device.  The CK is 16
136		space-separated hex octets.
137
138What:		/sys/bus/usb/device/.../wusb_disconnect
139Date:		July 2008
140KernelVersion:	2.6.27
141Contact:	David Vrabel <david.vrabel@csr.com>
142Description:
143		For Certified Wireless USB devices only.
144
145		Write a 1 to force the device to disconnect
146		(equivalent to unplugging a wired USB device).
147