1What: /sys/bus/usb/devices/.../power/persist 2Date: May 2007 3KernelVersion: 2.6.23 4Contact: Alan Stern <stern@rowland.harvard.edu> 5Description: 6 USB device directories can contain a file named power/persist. 7 The file holds a boolean value (0 or 1) indicating whether or 8 not the "USB-Persist" facility is enabled for the device. For 9 hubs this facility is always enabled and their device 10 directories will not contain this file. 11 12 For more information, see Documentation/driver-api/usb/persist.rst. 13 14What: /sys/bus/usb/devices/.../power/autosuspend 15Date: March 2007 16KernelVersion: 2.6.21 17Contact: Alan Stern <stern@rowland.harvard.edu> 18Description: 19 Each USB device directory will contain a file named 20 power/autosuspend. This file holds the time (in seconds) 21 the device must be idle before it will be autosuspended. 22 0 means the device will be autosuspended as soon as 23 possible. Negative values will prevent the device from 24 being autosuspended at all, and writing a negative value 25 will resume the device if it is already suspended. 26 27 The autosuspend delay for newly-created devices is set to 28 the value of the usbcore.autosuspend module parameter. 29 30What: /sys/bus/usb/device/.../power/connected_duration 31Date: January 2008 32KernelVersion: 2.6.25 33Contact: Sarah Sharp <sarah.a.sharp@intel.com> 34Description: 35 If CONFIG_PM is enabled, then this file is present. When read, 36 it returns the total time (in msec) that the USB device has been 37 connected to the machine. This file is read-only. 38Users: 39 PowerTOP <powertop@lists.01.org> 40 https://01.org/powertop/ 41 42What: /sys/bus/usb/device/.../power/active_duration 43Date: January 2008 44KernelVersion: 2.6.25 45Contact: Sarah Sharp <sarah.a.sharp@intel.com> 46Description: 47 If CONFIG_PM is enabled, then this file is present. When read, 48 it returns the total time (in msec) that the USB device has been 49 active, i.e. not in a suspended state. This file is read-only. 50 51 Tools can use this file and the connected_duration file to 52 compute the percentage of time that a device has been active. 53 For example, 54 echo $((100 * `cat active_duration` / `cat connected_duration`)) 55 will give an integer percentage. Note that this does not 56 account for counter wrap. 57Users: 58 PowerTOP <powertop@lists.01.org> 59 https://01.org/powertop/ 60 61What: /sys/bus/usb/devices/<busnum>-<port[.port]>...:<config num>-<interface num>/supports_autosuspend 62Date: January 2008 63KernelVersion: 2.6.27 64Contact: Sarah Sharp <sarah.a.sharp@intel.com> 65Description: 66 When read, this file returns 1 if the interface driver 67 for this interface supports autosuspend. It also 68 returns 1 if no driver has claimed this interface, as an 69 unclaimed interface will not stop the device from being 70 autosuspended if all other interface drivers are idle. 71 The file returns 0 if autosuspend support has not been 72 added to the driver. 73Users: 74 USB PM tool 75 git://git.moblin.org/users/sarah/usb-pm-tool/ 76 77What: /sys/bus/usb/device/.../avoid_reset_quirk 78Date: December 2009 79Contact: Oliver Neukum <oliver@neukum.org> 80Description: 81 Writing 1 to this file tells the kernel that this 82 device will morph into another mode when it is reset. 83 Drivers will not use reset for error handling for 84 such devices. 85Users: 86 usb_modeswitch 87 88What: /sys/bus/usb/devices/.../devnum 89KernelVersion: since at least 2.6.18 90Description: 91 Device address on the USB bus. 92Users: 93 libusb 94 95What: /sys/bus/usb/devices/.../bConfigurationValue 96KernelVersion: since at least 2.6.18 97Description: 98 bConfigurationValue of the *active* configuration for the 99 device. Writing 0 or -1 to bConfigurationValue will reset the 100 active configuration (unconfigure the device). Writing 101 another value will change the active configuration. 102 103 Note that some devices, in violation of the USB spec, have a 104 configuration with a value equal to 0. Writing 0 to 105 bConfigurationValue for these devices will install that 106 configuration, rather then unconfigure the device. 107 108 Writing -1 will always unconfigure the device. 109Users: 110 libusb 111 112What: /sys/bus/usb/devices/.../busnum 113KernelVersion: 2.6.22 114Description: 115 Bus-number of the USB-bus the device is connected to. 116Users: 117 libusb 118 119What: /sys/bus/usb/devices/.../descriptors 120KernelVersion: 2.6.26 121Description: 122 Binary file containing cached descriptors of the device. The 123 binary data consists of the device descriptor followed by the 124 descriptors for each configuration of the device. 125 Note that the wTotalLength of the config descriptors can not 126 be trusted, as the device may have a smaller config descriptor 127 than it advertises. The bLength field of each (sub) descriptor 128 can be trusted, and can be used to seek forward one (sub) 129 descriptor at a time until the next config descriptor is found. 130 All descriptors read from this file are in bus-endian format 131Users: 132 libusb 133 134What: /sys/bus/usb/devices/.../speed 135KernelVersion: since at least 2.6.18 136Description: 137 Speed the device is connected with to the usb-host in 138 Mbit / second. IE one of 1.5 / 12 / 480 / 5000. 139Users: 140 libusb 141