Add class documentation - #3806
Conversation
Signed-off-by: HiFiPhile <admin@hifiphile.com>
There was a problem hiding this comment.
🟢 Ready to approve
The changes are documentation-only, and the referenced configuration symbols/APIs align with existing TinyUSB headers and examples.
This review doesn't count toward merge requirements. Sign up for the private preview to control whether Copilot approvals count.
Pull request overview
This pull request restructures and expands TinyUSB’s reference documentation for USB class drivers by replacing the single legacy “class_drivers” page with a dedicated “Class Drivers” section and per-class guides covering configuration, descriptors, APIs/callbacks, and usage notes.
Changes:
- Replaces
docs/reference/class_drivers.rstwith a newdocs/reference/class/documentation tree (device/host overview + per-class pages). - Adds a “Class Drivers” index page with a support matrix and toctree for the new class guides.
- Updates the reference index to link to the new class documentation entry point.
File summaries
| File | Description |
|---|---|
| docs/reference/index.rst | Switches reference toctree from the legacy class page to the new class/index entry point. |
| docs/reference/class/index.rst | New “Class Drivers” landing page: overview, support matrix, and navigation. |
| docs/reference/class/device.rst | New device-side class usage guide (configuration/descriptors/callbacks overview). |
| docs/reference/class/host.rst | New host-side class usage guide (async model, sizing, core APIs). |
| docs/reference/class/audio.rst | Adds Audio class configuration and data-path guide. |
| docs/reference/class/bluetooth.rst | Adds Bluetooth HCI class configuration and data-path guide. |
| docs/reference/class/cdc.rst | Adds CDC Serial class guide for device + host usage. |
| docs/reference/class/dfu.rst | Adds DFU runtime + DFU mode guide with key callbacks and safety notes. |
| docs/reference/class/hid.rst | Adds HID class guide for device + host usage and sizing. |
| docs/reference/class/midi.rst | Adds MIDI 1.0/2.0 guides for device + host, including alt-setting behavior. |
| docs/reference/class/msc.rst | Adds MSC (BOT) guide for device + host, including async I/O notes. |
| docs/reference/class/mtp.rst | Adds MTP device guide focusing on supported ops/events/contracts. |
| docs/reference/class/network.rst | Adds USB Network (ECM/RNDIS/NCM) guide with MTU/NTB sizing notes. |
| docs/reference/class/printer.rst | Adds Printer device guide including control callbacks and data flow. |
| docs/reference/class/usbtmc.rst | Adds USBTMC/USB488 device guide with callback/message flow. |
| docs/reference/class/vendor.rst | Adds vendor-specific interface guide (buffered vs direct, optional EPs, host notes). |
| docs/reference/class/video.rst | Adds UVC device guide with negotiation, payload flow, and callbacks. |
| docs/reference/class_drivers.rst | Removes the legacy monolithic class-driver page in favor of the new structured section. |
Review details
- Files reviewed: 18/18 changed files
- Comments generated: 0
- Review effort level: Lite
We're testing this review assessment. Please use 👍 or 👎 to tell us if it's correct.
|
Hardware-in-the-loop (HIL) Test ReportNo HIL run for this push (no affected boards, or hardware testing did not run). |
Code reviewNo issues found. Checked for bugs and CLAUDE.md compliance. |
This pull request adds new reference documentation for classes, providing detailed guides on configuration, descriptors, APIs, and best practices.
@lbthomsen @karlp Feedback welcomed