summaryrefslogtreecommitdiff
path: root/src/class
AgeCommit message (Collapse)Author
2026-03-07cleanupYixingShen
2026-03-07fixed _open_vc_itf parsingYixingShen
Standard Interface Descriptor (Video Control) Video Control Header Descriptor Video Control Camera Terminal Descriptor Video Control Output Terminal Descriptor Standard Endpoint Descriptor Class-Specific VC Interrupt Endpoint Descriptor Video Control Header Descriptor's wTotalLength = Header Descriptor + Camera Terminal Descriptor + Output Terminal Descriptor _end_of_control_descriptor is Output Terminal Descriptor End the "end" should +7 for _find_desc searchig Standard Endpoint Descriptor
2026-03-06replace printer_to_hid example with printer_to_cdc examplehathach
fix printer GET_DEVICE_ID request weird wIndex (interface high, alt low)
2026-03-06add full read/write() API, use edpt stream for printer classhathach
2026-03-06update printer class: enhance descriptors, buffer sizes, and callbackshathach
2026-03-06Merge branch 'refs/heads/master' into fork/remiberthoz/device-class-printerhathach
2026-03-05add IAR warning flags to cmake build and fix themhathach
2026-03-01Merge pull request #3514 from sauloverissimo/fix/midi-device-cable-demuxZixun LI
midi device: add cable-aware stream read (tud_midi_n_demux_stream_read)
2026-02-25midi device: add cable-aware stream read (tud_midi_n_demux_stream_read)Saulo Veríssimo
The existing tud_midi_n_stream_read() accepts a cable_num parameter but ignores it — all cables share a single FIFO and stream parser state, so data from different virtual cables is silently mixed together. Add tud_midi_n_demux_stream_read() which returns the cable number of the data that was actually read. It peeks at each USB-MIDI event packet header before consuming it and stops when the next packet belongs to a different cable, allowing callers to dispatch per-cable without losing data. Implementation details: - Mirrors the host-side tuh_midi_stream_read() approach: tu_edpt_stream_peek for cable inspection, CIN-based byte count (USB MIDI 1.0 Table 4-1), leftover handling via existing midi_driver_stream_t - *p_cable_num initialized to 0xff sentinel so callers can detect "no data" even when return value is 0 - Cable-change check (total_read > 0 guard) covers both leftover-originated reads and freshly consumed packets - TU_VERIFY uses explicit != NULL comparisons, consistent with codebase style - Note: shares stream->buffer with tud_midi_n_stream_read(); do not mix calls on the same interface - Adds single-interface convenience wrapper tud_midi_demux_stream_read() Closes #1838
2026-02-25fix CDC host FTDI multiple channel loophathach
fix typos for ftdi_process_set_config() add J-Link GDB + RTT logging instructions
2026-02-11Merge remote-tracking branch 'origin/master' into msc_stallhathach
2026-02-11device/msc: only defer prepare_cbw() from STATUS_SENT when EP OUT stalledhathach
2026-02-07minor updatehathach
2026-01-26device/msc: skip command stage if EP out is stalledZixun LI
Signed-off-by: Zixun LI <[email protected]>
2026-01-14update printer_device.c accounting for upstream changesRémi Berthoz
2026-01-14Merge 'upstream/master' into device-class-printerRémi Berthoz
2026-01-14remove no-fifo mode in edpt stream APIhathach
update vendor_device.c for direct usbd xfer when either RX/TX BUFSIZE is 0 i.e CFG_TUD_VENDOR_TXRX_BUFFERED = 0
2026-01-13minor clean uphathach
separate tud_mtp_data_send() and tud_mtp_data_receive()
2026-01-12Merge branch 'refs/heads/master' into mtp_zlphathach
2026-01-07Adjust printer device class to 0.20.0 and fix compilation warningsRémi Berthoz
2026-01-06Merge pull request #3441 from hathach/fifo-access-modeHa Thach
HWFIFO access-mode refactor and stride-aware FIFO fixes across FSDEV/RUSB2/MUSB
2026-01-05Fix content of printer device class header (.h) fileRémi Berthoz
I apparently made a mistake when copying/renaming this file, file content was that of printer_device.c.
2026-01-05Add missing license to printer device class headerRémi Berthoz
2026-01-04Implement Printer Device ClassRémi Berthoz
2025-12-30tusb_fifo remove item_size make it fifo of byteshathach
2025-12-29device/mtp: improve loggingHiFiPhile
Signed-off-by: HiFiPhile <[email protected]>
2025-12-28device/mtp: queue ZLP when neededHiFiPhile
Signed-off-by: HiFiPhile <[email protected]>
2025-12-26Prevent unused-variable warning in dcd_host.cCédric Berger
'idx' is not used if CFG_TUH_CDC_LINE_CODING_ON_ENUM is not defined.
2025-12-21Change return of tud_vendor_n_write_clear from uint32_t to boolJames Smith
2025-12-21Removed tu_fifo_count_and_clearJames Smith
2025-12-20Added tud_vendor_write_clear() which forcefully clears TX bufferJames Smith
2025-12-12Merge branch 'refs/heads/master' into audio_openhathach
2025-12-12usbh/cdc: fix typo in cdch_openHiFiPhile
Signed-off-by: HiFiPhile <[email protected]>
2025-12-12Merge pull request #3402 from hathach/more-size-reduce-edpt-streamHa Thach
refactor, clean up to reduce size
2025-12-12fix edpt stream write/read to endpoint not yet openedhathach
2025-12-11move host hacked bulk mps out of tu_edpt_validate()hathach
2025-12-11refactor usbh_class_driver_t's open() to return number of driver len instead ↵hathach
of bool. help to simplify parsing configuration
2025-12-10move hwid into edpt stream for consistent APIhathach
2025-12-10Merge pull request #3401 from hathach/copilot/fix-mtp-device-bugHa Thach
Fix MTP transfer completion detection for exact-length packets
2025-12-10Merge branch 'master' into more-size-reduce-edpt-streamhathach
2025-12-10remove tu_fifo_discard_n() and its usagehathach
2025-12-10flatten cdc tx,rx streamhathach
2025-12-10change tu_fifo_clear()/tu_edpt_stream_clear() from return bool to voidhathach
2025-12-10Fix MTP transfer completion detection for exact-length packetscopilot-swe-agent[bot]
Change condition from `>` to `>=` to properly detect completion when xferred_len equals total_len. This fixes the bug where transfers of exactly bulk_mps length (e.g., 64 bytes for low speed) would never complete, such as GetHandles responses with 12 elements. Co-authored-by: hathach <[email protected]>
2025-12-08audio_device: use CFG_TUD_EDPT_DEDICATED_HWFIFO flag for FIFO transferZixun LI
Signed-off-by: Zixun LI <[email protected]>
2025-12-08Merge pull request #3340 from dinsfire64/hid-enum-fixHa Thach
remove hid host enumeration assumption
2025-12-02audio: fix audiod_open with midi interfacesZixun LI
Signed-off-by: Zixun LI <[email protected]>
2025-11-27add CFG_TUD_VENDOR_RX_MANUAL_XFER per suggestionhathach
2025-11-27make vendor_read_* API() is only available when CFG_TUD_VENDOR_RX_BUFSIZE > 0hathach
vendor_write_flush() and write_available() only available when CFG_TUD_VENDOR_TX_BUFSIZE > 0
2025-11-27change tud_vendor_rx_cb() behavior, buffer and bufsize only available when ↵hathach
CFG_TUD_VENDOR_RX_BUFSIZE = 0 update vendor device to omit ep buf when dedicated hwfifo is supported