xref: /linux/Documentation/ABI/testing/configfs-usb-gadget (revision 2a6b6c9a226279b4f6668450ddb21ae655558087)
1What:		/config/usb-gadget
2Date:		Jun 2013
3KernelVersion:	3.11
4Description:
5		This group contains sub-groups corresponding to created
6		USB gadgets.
7
8What:		/config/usb-gadget/gadget
9Date:		Jun 2013
10KernelVersion:	3.11
11Description:
12
13		The attributes of a gadget:
14
15		================  ============================================
16		UDC		  bind a gadget to UDC/unbind a gadget;
17				  write UDC's name found in /sys/class/udc/*
18				  to bind a gadget, empty string "" to unbind.
19
20		max_speed	  maximum speed the driver supports. Valid
21				  names are super-speed-plus, super-speed,
22				  high-speed, full-speed, and low-speed.
23
24		bDeviceClass	  USB device class code
25		bDeviceSubClass	  USB device subclass code
26		bDeviceProtocol	  USB device protocol code
27		bMaxPacketSize0	  maximum endpoint 0 packet size
28		bcdDevice	  bcd device release number
29		bcdUSB		  bcd USB specification version number
30		idProduct	  product ID
31		idVendor	  vendor ID
32		================  ============================================
33
34What:		/config/usb-gadget/gadget/configs
35Date:		Jun 2013
36KernelVersion:	3.11
37Description:
38		This group contains a USB gadget's configurations
39
40What:		/config/usb-gadget/gadget/configs/config
41Date:		Jun 2013
42KernelVersion:	3.11
43Description:
44		The attributes of a configuration:
45
46		================  ======================================
47		bmAttributes	  configuration characteristics
48		MaxPower	  maximum power consumption from the bus
49		================  ======================================
50
51What:		/config/usb-gadget/gadget/configs/config/strings
52Date:		Jun 2013
53KernelVersion:	3.11
54Description:
55		This group contains subdirectories for language-specific
56		strings for this configuration.
57
58What:		/config/usb-gadget/gadget/configs/config/strings/language
59Date:		Jun 2013
60KernelVersion:	3.11
61Description:
62		The attributes:
63
64		================  =========================
65		configuration	  configuration description
66		================  =========================
67
68
69What:		/config/usb-gadget/gadget/functions
70Date:		Jun 2013
71KernelVersion:	3.11
72Description:
73		This group contains functions available to this USB gadget.
74
75What:		/config/usb-gadget/gadget/functions/<func>.<inst>/interface.<n>
76Date:		May 2014
77KernelVersion:	3.16
78Description:
79		This group contains "Feature Descriptors" specific for one
80		gadget's USB interface or one interface group described
81		by an IAD.
82
83		The attributes:
84
85		=================	=====================================
86		compatible_id		8-byte string for "Compatible ID"
87		sub_compatible_id	8-byte string for "Sub Compatible ID"
88		=================	=====================================
89
90What:		/config/usb-gadget/gadget/functions/<func>.<inst>/interface.<n>/<property>
91Date:		May 2014
92KernelVersion:	3.16
93Description:
94		This group contains "Extended Property Descriptors" specific for one
95		gadget's USB interface or one interface group described
96		by an IAD.
97
98		The attributes:
99
100		=====		===============================================
101		type		value 1..7 for interpreting the data
102
103				- 1: unicode string
104				- 2: unicode string with environment variable
105				- 3: binary
106				- 4: little-endian 32-bit
107				- 5: big-endian 32-bit
108				- 6: unicode string with a symbolic link
109				- 7: multiple unicode strings
110		data		blob of data to be interpreted depending on
111				type
112		=====		===============================================
113
114What:		/config/usb-gadget/gadget/strings
115Date:		Jun 2013
116KernelVersion:	3.11
117Description:
118		This group contains subdirectories for language-specific
119		strings for this gadget.
120
121What:		/config/usb-gadget/gadget/strings/language
122Date:		Jun 2013
123KernelVersion:	3.11
124Description:
125		The attributes:
126
127		============	=================================
128		serialnumber	gadget's serial number (string)
129		product		gadget's product description
130		manufacturer	gadget's manufacturer description
131		============	=================================
132
133What:		/config/usb-gadget/gadget/os_desc
134Date:		May 2014
135KernelVersion:	3.16
136Description:
137		This group contains "OS String" extension handling attributes.
138
139		=============	===============================================
140		use		flag turning "OS Descriptors" support on/off
141		b_vendor_code	one-byte value used for custom per-device and
142				per-interface requests
143		qw_sign		an identifier to be reported as "OS String"
144				proper
145		=============	===============================================
146
147What:		/config/usb-gadget/gadget/webusb
148Date:		Dec 2022
149KernelVersion:	6.3
150Description:
151		This group contains "WebUSB" extension handling attributes.
152
153		=============	===============================================
154		use		flag turning "WebUSB" support on/off
155		bcdVersion	bcd WebUSB specification version number
156		bVendorCode	one-byte value used for custom per-device
157		landingPage	UTF-8 encoded URL of the device's landing page
158		=============	===============================================
159