Documentation/usb/functionfs-desc.rst

Source file repositories/reference/linux-study-clean/Documentation/usb/functionfs-desc.rst

File Facts

System
Linux kernel
Corpus path
Documentation/usb/functionfs-desc.rst
Extension
.rst
Size
1331 bytes
Lines
40
Domain
Support Tooling And Documentation
Bucket
Documentation
Inferred role
Support Tooling And Documentation: documentation
Status
atlas-only

Why This File Exists

Repository support layer: documentation, build tooling, samples, user-space helper tools, generated initramfs support, licenses, and validation utilities.

Dependency Surface

Detected Declarations

Annotated Snippet

======================
FunctionFS Descriptors
======================

Some of the descriptors that can be written to the FFS gadget are
described below. Device and configuration descriptors are handled
by the composite gadget and are not written by the user to the
FFS gadget.

Descriptors are written to the "ep0" file in the FFS gadget
following the descriptor header.

.. kernel-doc:: include/uapi/linux/usb/functionfs.h
   :doc: descriptors

Interface Descriptors
---------------------

Standard USB interface descriptors may be written. The class/subclass of the
most recent interface descriptor determines what type of class-specific
descriptors are accepted.

Class-Specific Descriptors
--------------------------

Class-specific descriptors are accepted only for the class/subclass of the
most recent interface descriptor. The following are some of the
class-specific descriptors that are supported.

DFU Functional Descriptor
~~~~~~~~~~~~~~~~~~~~~~~~~

When the interface class is USB_CLASS_APP_SPEC and the interface subclass
is USB_SUBCLASS_DFU, a DFU functional descriptor can be provided.
The DFU functional descriptor is a described in the USB specification for
Device Firmware Upgrade (DFU), version 1.1 as of this writing.

.. kernel-doc:: include/uapi/linux/usb/functionfs.h
   :doc: usb_dfu_functional_descriptor

Annotation

Implementation Notes