| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2026-08-18 | dcd(ip3511): fix DEVCMDSTAT write-1-to-clear handling and EP0 setup races | hathach | |
| DEVCMDSTAT mixes read/write fields with write-1-to-clear latches, so a blind read-modify-write writes a pending latch back as a one and silently clears it - a setup consumed that way strands EP0. Mask the latches on every update. The setup path follows the manual's order: acknowledge the latch, then read the payload. The EP0 IN interrupt is cleared along with EP0 OUT, as the control endpoint flowchart requires - a control IN completion latched before the setup must not reach usbd after it, where it would be applied to the request the setup just started and arm its status stage early. The payload is copied a byte at a time out of a buffer now declared volatile: the controller DMAs a new setup packet into it as soon as the latch is cleared, and C orders volatile accesses only against each other, so gcc sinks a plain memcpy below the guard read that follows at -O2 and -O3 - leaving only -Os, the level CI builds, correct. | |||
| 2026-07-12 | dcd(ip3511): clear Active directly on stall/iso-activate, keep EPSKIP for reopen | hathach | |
| EPSKIP raises a transfer completion, so using it on the stall path let the class re-arm the endpoint and Active+Stall never actually stalled (usbtest case 13); write bare Active=0 instead, and retire skipped transfers on endpoint reopen where the completion is wanted. Verified: usbtest 30/30 on lpcxpresso11u37. Co-Authored-By: Claude Fable 5 <[email protected]> Claude-Session: https://claude.ai/code/session_01HeF2gZ1M7GWkz6Av4BpKPg | |||
| 2026-07-09 | dcd(ip3511): iso alloc/activate; retire armed buffers via EPSKIP | hathach | |
| Clear Active before Stall so a queued endpoint actually halts (UM11126 41.8.1); use the sanctioned EPSKIP+wait sequence for stall/reopen/activate. Co-Authored-By: Claude Fable 5 <[email protected]> Claude-Session: https://claude.ai/code/session_01HeF2gZ1M7GWkz6Av4BpKPg | |||
| 2026-07-02 | license: 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-04-17 | fix some Wconversion warnings | hathach | |
| 2025-11-19 | Merge remote-tracking branch 'tinyusb/master' into ↵ | HiFiPhile | |
| copilot/fix-dcd-edpt-xfer-issue Signed-off-by: HiFiPhile <[email protected]> | |||
| 2025-11-17 | make TUP_DCD_EDPT_ISO_ALLOC i.e dcd_edpt_iso_alloc()/dcd_edpt_iso_activate() ↵ | hathach | |
| as default driver implementation. dcd_edpt_close() is deprecated and will be removed from all driver in the future. | |||
| 2025-10-22 | Apply suggestions from code review | Zixun LI | |
| Co-authored-by: Copilot <[email protected]> | |||
| 2025-10-22 | Fix copilot issues | Mengsk | |
| Signed-off-by: Mengsk <[email protected]> | |||
| 2025-10-22 | Add is_isr parameter to dcd_edpt_xfer and dcd_edpt_xfer_fifo | copilot-swe-agent[bot] | |
| Co-authored-by: HiFiPhile <[email protected]> | |||
| 2025-03-16 | Fix 2 IAR warnings. | HiFiPhile | |
| Signed-off-by: HiFiPhile <[email protected]> | |||
| 2024-10-14 | change dcd_init() return from void to bool | hathach | |
| 2024-10-14 | change the tusb_rhport_init_t struct, exclude the rhport to make API more ↵ | hathach | |
| consistent | |||
| 2024-10-11 | change dcd_init() to take rhport struct | hathach | |
| 2024-05-02 | add cmake for lpc15 | hathach | |
| 2024-05-02 | add cmake for lpc11 | hathach | |
| 2024-04-23 | clang work with lpc55 | hathach | |
| 2023-08-09 | update to dcd ip3511 to add work-around for lpc54628 usb hs errata USB.1 and ↵ | hathach | |
| USB.2 msc is mounted, but device couldn't work reliably and got constant reset due to other errata probably. | |||
| 2023-07-24 | rename CFG_TUSB_MEM_SECTION to CFG_TUD_MEM_SECTION in device stack | hathach | |
| CFG_TUD_MEM_SECTION is default to CFG_TUSB_MEM_SECTION | |||
| 2023-03-17 | fix trailing space and new line | hathach | |
| temporarily disable codespell | |||
| 2023-01-08 | ip3511 : Fix IAR build. | MasterPhi | |
| 2022-10-24 | use dummy for all ZLP for ip3511, fix lpc55 build with DEBUG=1 | hathach | |
| 2022-10-21 | unused (void) cast | tswan-quasi | |
| 2022-10-20 | typo fix | tswan-quasi | |
| 2022-10-20 | dummy buffer only on EP0 OUT ZLPs | tswan-quasi | |
| 2022-10-17 | minor rename | hathach | |
| 2022-10-13 | (void) rhport for unused parameter | tswan-quasi | |
| 2022-10-12 | double cast of pointer to remove error | tswan-quasi | |
| 2022-10-11 | lpc55s69 isochronous, dummy address for endpoint buffers to prevent ↵ | tswan-quasi | |
| accidental writes | |||
| 2022-03-07 | added dcd_sof_enable() stubs for all other ports | hathach | |
| 2022-02-25 | rename TUSB_OPT_DEVICE_ENABLED to CFG_TUD_ENABLED | hathach | |
| TUSB_OPT_DEVICE_ENABLED still usable for backward compatible | |||
| 2021-08-26 | add dcd_edpt_close_all() for clear existing configured state | hathach | |
| correctly responded to TD 9.13 Set Configuration Test | |||
| 2021-04-26 | use correct NBYTES_MAX for full and high speed | hathach | |
| 2021-04-26 | clean up | hathach | |
| 2021-04-26 | ip3511 correct buffer offset, nbytes layout for highspeed port1 | hathach | |
| able to get passed enumeration and up to READ10 | |||
| 2021-04-24 | fix unaligned access with port1 hs | hathach | |
| 2021-04-24 | lpc55 improve multiple controller support | hathach | |
| port1 highspeed requires USB_RAM | |||
| 2021-04-24 | lpc55 correct bus_reset with highspeed on support controller | hathach | |
| correct hsphy init for family | |||
| 2021-04-24 | lpc55 better multiport support | hathach | |
| 2021-04-24 | update dcd ip3511 for better multiple rhport support | hathach | |
| 2021-01-08 | use dcd_event_bus_reset() with speed to replace bus_signal | hathach | |
| 2020-04-17 | complete remove dcd_set_config(), fix unit test | hathach | |
| 2020-04-17 | mass rename tud/dcd_irq_handler to tud/dcd_init_handler | hathach | |
| 2020-04-16 | implement dcd disconnect/connect for lpc ip3511 | hathach | |
| 2020-04-06 | add tud_irq_handler() for all lpc ip3511 (13, 15, 11) | hathach | |
| 2019-10-04 | adding lpc1549, but couldnt recieve setup packet, though setup received ↵ | hathach | |
| interrupt is triggered | |||
| 2019-09-05 | 55s69 device work with usb0 | hathach | |
| 2019-09-01 | dma of lpc54114 can also execute up to 64 bytes each transfer | hathach | |
| There is still issue with cdc_msc_hid example | |||
| 2019-09-01 | rename lpc_usbd to lpc_ip3511 | hathach | |
