| Alan Stern | eaafbc3 | 2007-03-13 16:39:15 -0400 | [diff] [blame] | 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. | 
| Alan Stern | 2add522 | 2007-03-20 14:59:39 -0400 | [diff] [blame] | 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. | 
| Alan Stern | b41a60e | 2007-05-30 15:39:33 -0400 | [diff] [blame] | 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. | 
| Sarah Sharp | 979e524 | 2008-01-17 10:24:38 -0800 | [diff] [blame] | 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/ | 
| David Vrabel | c8cf246 | 2008-09-17 16:34:41 +0100 | [diff] [blame] | 88 |  | 
| Sarah Sharp | 49e7cc8 | 2008-10-06 14:45:46 -0700 | [diff] [blame] | 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/ | 
| David Vrabel | 61e0e79 | 2008-10-20 16:07:19 +0100 | [diff] [blame] | 104 |  | 
| David Vrabel | c8cf246 | 2008-09-17 16:34:41 +0100 | [diff] [blame] | 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). | 
| CHENG Renquan | 0c7a2b7 | 2009-11-22 01:28:52 +0800 | [diff] [blame] | 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 |