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

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

		All attributes read only:
		bInterfaceNumber	- USB interface number for this
					  streaming 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:
		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:
		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:
		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/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 only:
		bMatrixCoefficients	- matrix used to compute luma and
					chroma values from the color primaries
		bTransferCharacteristics- optoelectronic transfer
					characteristic of the source picutre,
					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
		bmInterfaceFlags	- 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
		bmInterfaceFlags	- 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 caputre
					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
