summaryrefslogtreecommitdiff
path: root/src/class/vendor/vendor_device.h
AgeCommit message (Collapse)Author
2026-07-09class/vendor: add interrupt/iso endpoint pairs and alt-setting supporthathach
Non-buffered per-type source/sink endpoints (bulk/int/iso) with manual RX arming across altsettings. Co-Authored-By: Claude Fable 5 <[email protected]> Claude-Session: https://claude.ai/code/session_01HeF2gZ1M7GWkz6Av4BpKPg
2026-07-02license: use SPDX identifiers for src/ headers (#3749)Ha Thach
* license: use SPDX identifiers for src/ headers Replace the full ~20-line MIT license boilerplate on every src/ file with a two-line SPDX tag (SPDX-FileCopyrightText + SPDX-License-Identifier), following the REUSE convention used by CircuitPython and the Linux kernel. Removes ~3500 lines of duplicated boilerplate.
2026-03-12correct default value for CFG_TUD_VENDOR_TX/RX_BUFSIZEhathach
2026-03-12refactor(vendor/cdc): add CFG_TUD_CDC_RX_NEED_ZLP and CFG_TUD_VENDOR_RX_NEED_ZLPhathach
2026-03-12refactor(config): separate endpoint buffer sizes into RX and TX definitions ↵hathach
for clarity and flexibility
2026-03-11rename .rx_multiple_packet_transfer to .rx_need_zlphathach
2026-02-11fix rx transfer length when high speed capable device/host working at full speedHiFiPhile
Signed-off-by: HiFiPhile <[email protected]>
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
2025-12-21Change return of tud_vendor_n_write_clear from uint32_t to boolJames Smith
2025-12-20Added tud_vendor_write_clear() which forcefully clears TX bufferJames Smith
2025-12-10remove tu_fifo_discard_n() and its usagehathach
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
2025-11-27add tud_vendor_n_read_discard(), refactor vendor device. Update webusb ↵hathach
example for more robust
2025-10-28fix Identifiers that start with '__' or '_[A-Z]' are reserved.hathach
fix compiling with nuc family
2025-09-17Update weak callbacks to new syntaxHiFiPhile
Signed-off-by: HiFiPhile <[email protected]>
2024-09-10update vendor device to use edpt stream which also support non-buffereed (no ↵hathach
fifo) mode
2024-04-08Merge branch 'master' of github.com:HiFiPhile/tinyusb into vendor_fifoHiFiPhile
2024-04-08add class driver deinithathach
2024-03-03Use FIFO size as condition.HiFiPhile
2024-02-01Allow vendor class to be used without FIFO.HiFiPhile
2023-04-06add define for vendor_flush() to write_flush() for backward compatiblehathach
2023-03-31Remove trailing whitespaceepatstarkey
2023-03-28Update vendor_device.hepatstarkey
2023-03-17fix trailing space and new linehathach
temporarily disable codespell
2023-02-22rename maros from FUZZ to _FUZZ, change TU_STATIC to static _fuzz_threadhathach
2023-01-20fix: Change all static variables to thread when fuzzingNathaniel Brough
2022-01-19vendor: Add tx flush functionalityJerzy Kasenberg
So far tud_vendor_n_write() always flushed data. It requires to have whole vendor packed constructed before in one buffer. With this change data do get flushed when endpoint size is filled on write, when there is no enough data to fill endpoint data is not sent and subsequent calls to write functions can add more bytes. Vendor code needs to call tud_vendor_n_flush() when packet is ready to be sent.
2022-01-19vendor: Add tx callbackJerzy Kasenberg
Other drivers already have notification about data sent. It allows batter control in application on vendor protocol level.
2021-09-18Merge branch 'master' into zhangslice-masterhathach
2021-08-22Fix vendor fifo deadlock, add tud_vendor_n_read_flushMasterPhi
2021-06-18fix build with mm32 boardhathach
2021-05-27include clean uphathach
2021-04-30Remove n from tu_fifo_get_write_info() and fix bug in vendor classReinhard Panhuber
2021-04-30Remove all remainings with peek_atReinhard Panhuber
2020-05-28update vendor open()hathach
2019-08-31close #105 add tud_vendor_write_available()hathach
2019-08-01add vendor peek, change cdc peek signature, change cdc read_char() return ↵hathach
from signed char to int32_t
2019-07-30clean uphathach
2019-07-24move tud_vendor_control_* to usbd.hhathach
2019-07-24update vendor device similar to cdc read/writehathach
maybe refactor later
2019-07-24rename tud_control_vendor_request_cb/complete_cb to ↵hathach
tud_vendor_control_request_cb/complete_cb
2019-07-19more house keepinghathach
2019-07-19rename custom/custom-_* to vendor/vendor_*hathach