functionfs-desc.rst 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. ======================
  2. FunctionFS Descriptors
  3. ======================
  4. Some of the descriptors that can be written to the FFS gadget are
  5. described below. Device and configuration descriptors are handled
  6. by the composite gadget and are not written by the user to the
  7. FFS gadget.
  8. Descriptors are written to the "ep0" file in the FFS gadget
  9. following the descriptor header.
  10. .. kernel-doc:: include/uapi/linux/usb/functionfs.h
  11. :doc: descriptors
  12. Interface Descriptors
  13. ---------------------
  14. Standard USB interface descriptors may be written. The class/subclass of the
  15. most recent interface descriptor determines what type of class-specific
  16. descriptors are accepted.
  17. Class-Specific Descriptors
  18. --------------------------
  19. Class-specific descriptors are accepted only for the class/subclass of the
  20. most recent interface descriptor. The following are some of the
  21. class-specific descriptors that are supported.
  22. DFU Functional Descriptor
  23. ~~~~~~~~~~~~~~~~~~~~~~~~~
  24. When the interface class is USB_CLASS_APP_SPEC and the interface subclass
  25. is USB_SUBCLASS_DFU, a DFU functional descriptor can be provided.
  26. The DFU functional descriptor is a described in the USB specification for
  27. Device Firmware Upgrade (DFU), version 1.1 as of this writing.
  28. .. kernel-doc:: include/uapi/linux/usb/functionfs.h
  29. :doc: usb_dfu_functional_descriptor