Merge branch 'fix/asoc' into for-linus
[sfrench/cifs-2.6.git] / Documentation / ABI / testing / sysfs-bus-usb
1 What:           /sys/bus/usb/devices/.../power/autosuspend
2 Date:           March 2007
3 KernelVersion:  2.6.21
4 Contact:        Alan Stern <stern@rowland.harvard.edu>
5 Description:
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
17 What:           /sys/bus/usb/devices/.../power/level
18 Date:           March 2007
19 KernelVersion:  2.6.21
20 Contact:        Alan Stern <stern@rowland.harvard.edu>
21 Description:
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
43 What:           /sys/bus/usb/devices/.../power/persist
44 Date:           May 2007
45 KernelVersion:  2.6.23
46 Contact:        Alan Stern <stern@rowland.harvard.edu>
47 Description:
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
56 What:           /sys/bus/usb/device/.../power/connected_duration
57 Date:           January 2008
58 KernelVersion:  2.6.25
59 Contact:        Sarah Sharp <sarah.a.sharp@intel.com>
60 Description:
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.
65 Users:
66                 PowerTOP <power@bughost.org>
67                 http://www.lesswatts.org/projects/powertop/
68
69 What:           /sys/bus/usb/device/.../power/active_duration
70 Date:           January 2008
71 KernelVersion:  2.6.25
72 Contact:        Sarah Sharp <sarah.a.sharp@intel.com>
73 Description:
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.
85 Users:
86                 PowerTOP <power@bughost.org>
87                 http://www.lesswatts.org/projects/powertop/
88
89 What:           /sys/bus/usb/device/<busnum>-<devnum>...:<config num>-<interface num>/supports_autosuspend
90 Date:           January 2008
91 KernelVersion:  2.6.27
92 Contact:        Sarah Sharp <sarah.a.sharp@intel.com>
93 Description:
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.
101 Users:
102                 USB PM tool
103                 git://git.moblin.org/users/sarah/usb-pm-tool/
104
105 What:           /sys/bus/usb/device/.../authorized
106 Date:           July 2008
107 KernelVersion:  2.6.26
108 Contact:        David Vrabel <david.vrabel@csr.com>
109 Description:
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
118 What:           /sys/bus/usb/device/.../wusb_cdid
119 Date:           July 2008
120 KernelVersion:  2.6.27
121 Contact:        David Vrabel <david.vrabel@csr.com>
122 Description:
123                 For Certified Wireless USB devices only.
124
125                 A devices's CDID, as 16 space-separated hex octets.
126
127 What:           /sys/bus/usb/device/.../wusb_ck
128 Date:           July 2008
129 KernelVersion:  2.6.27
130 Contact:        David Vrabel <david.vrabel@csr.com>
131 Description:
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
138 What:           /sys/bus/usb/device/.../wusb_disconnect
139 Date:           July 2008
140 KernelVersion:  2.6.27
141 Contact:        David Vrabel <david.vrabel@csr.com>
142 Description:
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
148 What:           /sys/bus/usb/drivers/.../remove_id
149 Date:           November 2009
150 Contact:        CHENG Renquan <rqcheng@smu.edu.sg>
151 Description:
152                 Writing a device ID to this file will remove an ID
153                 that was dynamically added via the new_id sysfs entry.
154                 The format for the device ID is:
155                 idVendor idProduct.     After successfully
156                 removing an ID, the driver will no longer support the
157                 device.  This is useful to ensure auto probing won't
158                 match the driver to the device.  For example:
159                 # echo "046d c315" > /sys/bus/usb/drivers/foo/remove_id