GNU Linux-libre 6.1.90-gnu
[releases.git] / Documentation / ABI / testing / sysfs-class-usb_power_delivery
1 What:           /sys/class/usb_power_delivery
2 Date:           May 2022
3 Contact:        Heikki Krogerus <heikki.krogerus@linux.intel.com>
4 Description:
5                 Directory for USB Power Delivery devices.
6
7 What:           /sys/class/usb_power_delivery/.../revision
8 Date:           May 2022
9 Contact:        Heikki Krogerus <heikki.krogerus@linux.intel.com>
10 Description:
11                 File showing the USB Power Delivery Specification Revision used
12                 in communication.
13
14 What:           /sys/class/usb_power_delivery/.../version
15 Date:           May 2022
16 Contact:        Heikki Krogerus <heikki.krogerus@linux.intel.com>
17 Description:
18                 This is an optional attribute file showing the version of the
19                 specific revision of the USB Power Delivery Specification. In
20                 most cases the specification version is not known and the file
21                 is not available.
22
23 What:           /sys/class/usb_power_delivery/.../source-capabilities
24 Date:           May 2022
25 Contact:        Heikki Krogerus <heikki.krogerus@linux.intel.com>
26 Description:
27                 The source capabilities message "Source_Capabilities" contains a
28                 set of Power Data Objects (PDO), each representing a type of
29                 power supply. The order of the PDO objects is defined in the USB
30                 Power Delivery Specification. Each PDO - power supply - will
31                 have its own device, and the PDO device name will start with the
32                 object position number as the first character followed by the
33                 power supply type name (":" as delimiter).
34
35                         /sys/class/usb_power_delivery/.../source_capabilities/<position>:<type>
36
37 What:           /sys/class/usb_power_delivery/.../sink-capabilities
38 Date:           May 2022
39 Contact:        Heikki Krogerus <heikki.krogerus@linux.intel.com>
40 Description:
41                 The sink capability message "Sink_Capabilities" contains a set
42                 of Power Data Objects (PDO) just like with source capabilities,
43                 but instead of describing the power capabilities, these objects
44                 describe the power requirements.
45
46                 The order of the objects in the sink capability message is the
47                 same as with the source capabilities message.
48
49 Fixed Supplies
50
51 What:           /sys/class/usb_power_delivery/.../<capability>/<position>:fixed_supply
52 Date:           May 2022
53 Contact:        Heikki Krogerus <heikki.krogerus@linux.intel.com>
54 Description:
55                 Devices containing the attributes (the bit fields) defined for
56                 Fixed Supplies.
57
58                 The device "1:fixed_supply" is special. USB Power Delivery
59                 Specification dictates that the first PDO (at object position
60                 1), and the only mandatory PDO, is always the vSafe5V Fixed
61                 Supply Object. vSafe5V Object has additional fields defined for
62                 it that the other Fixed Supply Objects do not have and that are
63                 related to the USB capabilities rather than power capabilities.
64
65 What:           /sys/class/usb_power_delivery/.../<capability>/1:fixed_supply/dual_role_power
66 Date:           May 2022
67 Contact:        Heikki Krogerus <heikki.krogerus@linux.intel.com>
68 Description:
69                 This file contains boolean value that tells does the device
70                 support both source and sink power roles.
71
72 What:           /sys/class/usb_power_delivery/.../<capability>/1:fixed_supply/usb_suspend_supported
73 Date:           May 2022
74 Contact:        Heikki Krogerus <heikki.krogerus@linux.intel.com>
75 Description:
76                 This file shows the value of the USB Suspend Supported bit in
77                 vSafe5V Fixed Supply Object. If the bit is set then the device
78                 will follow the USB 2.0 and USB 3.2 rules for suspend and
79                 resume.
80
81 What:           /sys/class/usb_power_delivery/.../<capability>/1:fixed_supply/unconstrained_power
82 Date:           May 2022
83 Contact:        Heikki Krogerus <heikki.krogerus@linux.intel.com>
84 Description:
85                 This file shows the value of the Unconstrained Power bit in
86                 vSafe5V Fixed Supply Object. The bit is set when an external
87                 source of power, powerful enough to power the entire system on
88                 its own, is available for the device.
89
90 What:           /sys/class/usb_power_delivery/.../<capability>/1:fixed_supply/usb_communication_capable
91 Date:           May 2022
92 Contact:        Heikki Krogerus <heikki.krogerus@linux.intel.com>
93 Description:
94                 This file shows the value of the USB Communication Capable bit in
95                 vSafe5V Fixed Supply Object.
96
97 What:           /sys/class/usb_power_delivery/.../<capability>/1:fixed_supply/dual_role_data
98 Date:           May 2022
99 Contact:        Heikki Krogerus <heikki.krogerus@linux.intel.com>
100 Description:
101                 This file shows the value of the Dual-Role Data bit in vSafe5V
102                 Fixed Supply Object. Dual role data means ability act as both
103                 USB host and USB device.
104
105 What:           /sys/class/usb_power_delivery/.../<capability>/1:fixed_supply/unchunked_extended_messages_supported
106 Date:           May 2022
107 Contact:        Heikki Krogerus <heikki.krogerus@linux.intel.com>
108 Description:
109                 This file shows the value of the Unchunked Extended Messages
110                 Supported bit in vSafe5V Fixed Supply Object.
111
112 What:           /sys/class/usb_power_delivery/.../<capability>/<position>:fixed_supply/voltage
113 Date:           May 2022
114 Contact:        Heikki Krogerus <heikki.krogerus@linux.intel.com>
115 Description:
116                 The voltage the supply supports in millivolts.
117
118 What:           /sys/class/usb_power_delivery/.../source-capabilities/<position>:fixed_supply/maximum_current
119 Date:           May 2022
120 Contact:        Heikki Krogerus <heikki.krogerus@linux.intel.com>
121 Description:
122                 Maximum current of the fixed source supply in milliamperes.
123
124 What:           /sys/class/usb_power_delivery/.../sink-capabilities/<position>:fixed_supply/operational_current
125 Date:           May 2022
126 Contact:        Heikki Krogerus <heikki.krogerus@linux.intel.com>
127 Description:
128                 Operational current of the sink in milliamperes.
129
130 What:           /sys/class/usb_power_delivery/.../sink-capabilities/<position>:fixed_supply/fast_role_swap_current
131 Date:           May 2022
132 Contact:        Heikki Krogerus <heikki.krogerus@linux.intel.com>
133 Description:
134                 This file contains the value of the "Fast Role Swap USB Type-C
135                 Current" field that tells the current level the sink requires
136                 after a Fast Role Swap.
137                 0 - Fast Swap not supported"
138                 1 - Default USB Power"
139                 2 - 1.5A@5V"
140                 3 - 3.0A@5V"
141
142 Variable Supplies
143
144 What:           /sys/class/usb_power_delivery/.../<capability>/<position>:variable_supply
145 Date:           May 2022
146 Contact:        Heikki Krogerus <heikki.krogerus@linux.intel.com>
147 Description:
148                 Variable Power Supply PDO.
149
150 What:           /sys/class/usb_power_delivery/.../<capability>/<position>:variable_supply/maximum_voltage
151 Date:           May 2022
152 Contact:        Heikki Krogerus <heikki.krogerus@linux.intel.com>
153 Description:
154                 Maximum Voltage in millivolts.
155
156 What:           /sys/class/usb_power_delivery/.../<capability>/<position>:variable_supply/minimum_voltage
157 Date:           May 2022
158 Contact:        Heikki Krogerus <heikki.krogerus@linux.intel.com>
159 Description:
160                 Minimum Voltage in millivolts.
161
162 What:           /sys/class/usb_power_delivery/.../source-capabilities/<position>:variable_supply/maximum_current
163 Date:           May 2022
164 Contact:        Heikki Krogerus <heikki.krogerus@linux.intel.com>
165 Description:
166                 The maximum current in milliamperes that the source can supply
167                 at the given Voltage range.
168
169 What:           /sys/class/usb_power_delivery/.../sink-capabilities/<position>:variable_supply/operational_current
170 Date:           May 2022
171 Contact:        Heikki Krogerus <heikki.krogerus@linux.intel.com>
172 Description:
173                 The operational current in milliamperes that the sink requires
174                 at the given Voltage range.
175
176 Battery Supplies
177
178 What:           /sys/class/usb_power_delivery/.../<capability>/<position>:battery
179 Date:           May 2022
180 Contact:        Heikki Krogerus <heikki.krogerus@linux.intel.com>
181 Description:
182                 Battery PDO.
183
184 What:           /sys/class/usb_power_delivery/.../<capability>/<position>:battery/maximum_voltage
185 Date:           May 2022
186 Contact:        Heikki Krogerus <heikki.krogerus@linux.intel.com>
187 Description:
188                 Maximum Voltage in millivolts.
189
190 What:           /sys/class/usb_power_delivery/.../<capability>/<position>:battery/minimum_voltage
191 Date:           May 2022
192 Contact:        Heikki Krogerus <heikki.krogerus@linux.intel.com>
193 Description:
194                 Minimum Voltage in millivolts.
195
196 What:           /sys/class/usb_power_delivery/.../source-capabilities/<position>:battery/maximum_power
197 Date:           May 2022
198 Contact:        Heikki Krogerus <heikki.krogerus@linux.intel.com>
199 Description:
200                 Maximum allowable Power in milliwatts.
201
202 What:           /sys/class/usb_power_delivery/.../sink-capabilities/<position>:battery/operational_power
203 Date:           May 2022
204 Contact:        Heikki Krogerus <heikki.krogerus@linux.intel.com>
205 Description:
206                 The operational power that the sink requires at the given
207                 voltage range.
208
209 Standard Power Range (SPR) Programmable Power Supplies
210
211 What:           /sys/class/usb_power_delivery/.../<capability>/<position>:programmable_supply
212 Date:           May 2022
213 Contact:        Heikki Krogerus <heikki.krogerus@linux.intel.com>
214 Description:
215                 Programmable Power Supply (PPS) Augmented PDO (APDO).
216
217 What:           /sys/class/usb_power_delivery/.../<capability>/<position>:programmable_supply/maximum_voltage
218 Date:           May 2022
219 Contact:        Heikki Krogerus <heikki.krogerus@linux.intel.com>
220 Description:
221                 Maximum Voltage in millivolts.
222
223 What:           /sys/class/usb_power_delivery/.../<capability>/<position>:programmable_supply/minimum_voltage
224 Date:           May 2022
225 Contact:        Heikki Krogerus <heikki.krogerus@linux.intel.com>
226 Description:
227                 Minimum Voltage in millivolts.
228
229 What:           /sys/class/usb_power_delivery/.../<capability>/<position>:programmable_supply/maximum_current
230 Date:           May 2022
231 Contact:        Heikki Krogerus <heikki.krogerus@linux.intel.com>
232 Description:
233                 Maximum Current in milliamperes.
234
235 What:           /sys/class/usb_power_delivery/.../source-capabilities/<position>:programmable_supply/pps_power_limited
236 Date:           May 2022
237 Contact:        Heikki Krogerus <heikki.krogerus@linux.intel.com>
238 Description:
239                 The PPS Power Limited bit indicates whether or not the source
240                 supply will exceed the rated output power if requested.