summaryrefslogtreecommitdiff
path: root/Documentation/ABI/testing/configfs-usb-gadget-uvc
blob: 4feb692c4c1d37190c04cff86ace614648e3db03 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
What:		/config/usb-gadget/gadget/functions/uvc.name
Date:		Dec 2014
KernelVersion:	4.0
Description:	UVC function directory

		===================	=============================
		streaming_maxburst	0..15 (ss only)
		streaming_maxpacket	1..1023 (fs), 1..3072 (hs/ss)
		streaming_interval	1..16
		function_name		string [32]
		===================	=============================

What:		/config/usb-gadget/gadget/functions/uvc.name/control
Date:		Dec 2014
KernelVersion:	4.0
Description:	Control descriptors

		All attributes read only except enable_interrupt_ep:

		===================	=============================
		bInterfaceNumber	USB interface number for this
					streaming interface
		enable_interrupt_ep	flag to enable the interrupt
					endpoint for the VC interface
		===================	=============================

What:		/config/usb-gadget/gadget/functions/uvc.name/control/class
Date:		Dec 2014
KernelVersion:	4.0
Description:	Class descriptors

What:		/config/usb-gadget/gadget/functions/uvc.name/control/class/ss
Date:		Dec 2014
KernelVersion:	4.0
Description:	Super speed control class descriptors

What:		/config/usb-gadget/gadget/functions/uvc.name/control/class/fs
Date:		Dec 2014
KernelVersion:	4.0
Description:	Full speed control class descriptors

What:		/config/usb-gadget/gadget/functions/uvc.name/control/terminal
Date:		Dec 2014
KernelVersion:	4.0
Description:	Terminal descriptors

What:		/config/usb-gadget/gadget/functions/uvc.name/control/terminal/output
Date:		Dec 2014
KernelVersion:	4.0
Description:	Output terminal descriptors

What:		/config/usb-gadget/gadget/functions/uvc.name/control/terminal/output/default
Date:		Dec 2014
KernelVersion:	4.0
Description:	Default output terminal descriptors

		All attributes read only except bSourceID:

		==============	=============================================
		iTerminal	index of string descriptor
		bSourceID	id of the terminal to which this terminal
				is connected
		bAssocTerminal	id of the input terminal to which this output
				terminal is associated
		wTerminalType	terminal type
		bTerminalID	a non-zero id of this terminal
		==============	=============================================

What:		/config/usb-gadget/gadget/functions/uvc.name/control/terminal/camera
Date:		Dec 2014
KernelVersion:	4.0
Description:	Camera terminal descriptors

What:		/config/usb-gadget/gadget/functions/uvc.name/control/terminal/camera/default
Date:		Dec 2014
KernelVersion:	4.0
Description:	Default camera terminal descriptors

		All attributes read only except bmControls, which is read/write:

		========================  ====================================
		bmControls		  bitmap specifying which controls are
					  supported for the video stream
		wOcularFocalLength	  the value of Locular
		wObjectiveFocalLengthMax  the value of Lmin
		wObjectiveFocalLengthMin  the value of Lmax
		iTerminal		  index of string descriptor
		bAssocTerminal		  id of the output terminal to which
					  this terminal is connected
		wTerminalType		  terminal type
		bTerminalID		  a non-zero id of this terminal
		========================  ====================================

What:		/config/usb-gadget/gadget/functions/uvc.name/control/processing
Date:		Dec 2014
KernelVersion:	4.0
Description:	Processing unit descriptors

What:		/config/usb-gadget/gadget/functions/uvc.name/control/processing/default
Date:		Dec 2014
KernelVersion:	4.0
Description:	Default processing unit descriptors

		All attributes read only except bmControls, which is read/write:

		===============	========================================
		iProcessing	index of string descriptor
		bmControls	bitmap specifying which controls are
				supported for the video stream
		wMaxMultiplier	maximum digital magnification x100
		bSourceID	id of the terminal to which this unit is
				connected
		bUnitID		a non-zero id of this unit
		===============	========================================

What:		/config/usb-gadget/gadget/functions/uvc.name/control/extensions
Date:		Nov 2022
KernelVersion:	6.1
Description:	Extension unit descriptors

What:		/config/usb-gadget/gadget/functions/uvc.name/control/extensions/name
Date:		Nov 2022
KernelVersion:	6.1
Description:	Extension Unit (XU) Descriptor

		bLength, bUnitID and iExtension are read-only. All others are
		read-write.

		=================	========================================
		bLength			size of the descriptor in bytes
		bUnitID			non-zero ID of this unit
		guidExtensionCode	Vendor-specific code identifying the XU
		bNumControls		number of controls in this XU
		bNrInPins		number of input pins for this unit
		baSourceID		list of the IDs of the units or terminals
					to which this XU is connected
		bControlSize		size of the bmControls field in bytes
		bmControls		list of bitmaps detailing which vendor
					specific controls are supported
		iExtension		index of a string descriptor that describes
					this extension unit
		=================	========================================

What:		/config/usb-gadget/gadget/functions/uvc.name/control/header
Date:		Dec 2014
KernelVersion:	4.0
Description:	Control header descriptors

What:		/config/usb-gadget/gadget/functions/uvc.name/control/header/name
Date:		Dec 2014
KernelVersion:	4.0
Description:	Specific control header descriptors

dwClockFrequency
bcdUVC
What:		/config/usb-gadget/gadget/functions/uvc.name/streaming
Date:		Dec 2014
KernelVersion:	4.0
Description:	Streaming descriptors

		All attributes read only:

		================	=============================
		bInterfaceNumber	USB interface number for this
					streaming interface
		================	=============================

What:		/config/usb-gadget/gadget/functions/uvc.name/streaming/class
Date:		Dec 2014
KernelVersion:	4.0
Description:	Streaming class descriptors

What:		/config/usb-gadget/gadget/functions/uvc.name/streaming/class/ss
Date:		Dec 2014
KernelVersion:	4.0
Description:	Super speed streaming class descriptors

What:		/config/usb-gadget/gadget/functions/uvc.name/streaming/class/hs
Date:		Dec 2014
KernelVersion:	4.0
Description:	High speed streaming class descriptors

What:		/config/usb-gadget/gadget/functions/uvc.name/streaming/class/fs
Date:		Dec 2014
KernelVersion:	4.0
Description:	Full speed streaming class descriptors

What:		/config/usb-gadget/gadget/functions/uvc.name/streaming/color_matching
Date:		Dec 2014
KernelVersion:	4.0
Description:	Color matching descriptors

What:		/config/usb-gadget/gadget/functions/uvc.name/streaming/color_matching/default
Date:		Dec 2014
KernelVersion:	4.0
Description:	Default color matching descriptors

		All attributes read/write:

		========================  ======================================
		bMatrixCoefficients	  matrix used to compute luma and
					  chroma values from the color primaries
		bTransferCharacteristics  optoelectronic transfer
					  characteristic of the source picture,
					  also called the gamma function
		bColorPrimaries		  color primaries and the reference
					  white
		========================  ======================================

What:		/config/usb-gadget/gadget/functions/uvc.name/streaming/color_matching/name
Date:		Dec 2022
KernelVersion:	6.3
Description:	Additional color matching descriptors

		All attributes read/write:

		========================  ======================================
		bMatrixCoefficients	  matrix used to compute luma and
					  chroma values from the color primaries
		bTransferCharacteristics  optoelectronic transfer
					  characteristic of the source picture,
					  also called the gamma function
		bColorPrimaries		  color primaries and the reference
					  white
		========================  ======================================

What:		/config/usb-gadget/gadget/functions/uvc.name/streaming/mjpeg
Date:		Dec 2014
KernelVersion:	4.0
Description:	MJPEG format descriptors

What:		/config/usb-gadget/gadget/functions/uvc.name/streaming/mjpeg/name
Date:		Dec 2014
KernelVersion:	4.0
Description:	Specific MJPEG format descriptors

		All attributes read only,
		except bmaControls and bDefaultFrameIndex:

		===================	=====================================
		bFormatIndex		unique id for this format descriptor;
					only defined after parent header is
					linked into the streaming class;
					read-only
		bmaControls		this format's data for bmaControls in
					the streaming header
		bmInterlaceFlags	specifies interlace information,
					read-only
		bAspectRatioY		the X dimension of the picture aspect
					ratio, read-only
		bAspectRatioX		the Y dimension of the picture aspect
					ratio, read-only
		bmFlags			characteristics of this format,
					read-only
		bDefaultFrameIndex	optimum frame index for this stream
		===================	=====================================

What:		/config/usb-gadget/gadget/functions/uvc.name/streaming/mjpeg/name/name
Date:		Dec 2014
KernelVersion:	4.0
Description:	Specific MJPEG frame descriptors

		=========================  =====================================
		bFrameIndex		   unique id for this framedescriptor;
					   only defined after parent format is
					   linked into the streaming header;
					   read-only
		dwFrameInterval		   indicates how frame interval can be
					   programmed; a number of values
					   separated by newline can be specified
		dwDefaultFrameInterval	   the frame interval the device would
					   like to use as default
		dwMaxVideoFrameBufferSize  the maximum number of bytes the
					   compressor will produce for a video
					   frame or still image
		dwMaxBitRate		   the maximum bit rate at the shortest
					   frame interval in bps
		dwMinBitRate		   the minimum bit rate at the longest
					   frame interval in bps
		wHeight			   height of decoded bitmap frame in px
		wWidth			   width of decoded bitmam frame in px
		bmCapabilities		   still image support, fixed frame-rate
					   support
		=========================  =====================================

What:		/config/usb-gadget/gadget/functions/uvc.name/streaming/uncompressed
Date:		Dec 2014
KernelVersion:	4.0
Description:	Uncompressed format descriptors

What:		/config/usb-gadget/gadget/functions/uvc.name/streaming/uncompressed/name
Date:		Dec 2014
KernelVersion:	4.0
Description:	Specific uncompressed format descriptors

		==================	=======================================
		bFormatIndex		unique id for this format descriptor;
					only defined after parent header is
					linked into the streaming class;
					read-only
		bmaControls		this format's data for bmaControls in
					the streaming header
		bmInterlaceFlags	specifies interlace information,
					read-only
		bAspectRatioY		the X dimension of the picture aspect
					ratio, read-only
		bAspectRatioX		the Y dimension of the picture aspect
					ratio, read-only
		bDefaultFrameIndex	optimum frame index for this stream
		bBitsPerPixel		number of bits per pixel used to
					specify color in the decoded video
					frame
		guidFormat		globally unique id used to identify
					stream-encoding format
		==================	=======================================

What:		/config/usb-gadget/gadget/functions/uvc.name/streaming/uncompressed/name/name
Date:		Dec 2014
KernelVersion:	4.0
Description:	Specific uncompressed frame descriptors

		=========================  =====================================
		bFrameIndex		   unique id for this framedescriptor;
					   only defined after parent format is
					   linked into the streaming header;
					   read-only
		dwFrameInterval		   indicates how frame interval can be
					   programmed; a number of values
					   separated by newline can be specified
		dwDefaultFrameInterval	   the frame interval the device would
					   like to use as default
		dwMaxVideoFrameBufferSize  the maximum number of bytes the
					   compressor will produce for a video
					   frame or still image
		dwMaxBitRate		   the maximum bit rate at the shortest
					   frame interval in bps
		dwMinBitRate		   the minimum bit rate at the longest
					   frame interval in bps
		wHeight			   height of decoded bitmap frame in px
		wWidth			   width of decoded bitmam frame in px
		bmCapabilities		   still image support, fixed frame-rate
					   support
		=========================  =====================================

What:		/config/usb-gadget/gadget/functions/uvc.name/streaming/header
Date:		Dec 2014
KernelVersion:	4.0
Description:	Streaming header descriptors

What:		/config/usb-gadget/gadget/functions/uvc.name/streaming/header/name
Date:		Dec 2014
KernelVersion:	4.0
Description:	Specific streaming header descriptors

		All attributes read only:

		====================	=====================================
		bTriggerUsage		how the host software will respond to
					a hardware trigger interrupt event
		bTriggerSupport		flag specifying if hardware
					triggering is supported
		bStillCaptureMethod	method of still image capture
					supported
		bTerminalLink		id of the output terminal to which
					the video endpoint of this interface
					is connected
		bmInfo			capabilities of this video streaming
					interface
		====================	=====================================

What:		/sys/class/udc/udc.name/device/gadget/video4linux/video.name/function_name
Date:		May 2018
KernelVersion:	4.19
Description:	UVC configfs function instance name