summaryrefslogtreecommitdiff
path: root/src/osal
AgeCommit message (Collapse)Author
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-06-22address reviewHiFiPhile
2026-06-22Merge remote-tracking branch 'tinyusb/master' into pr-osal-spin-deinitHiFiPhile
Signed-off-by: HiFiPhile <[email protected]>
2026-06-22osal: add missing osal_spin_deinit()HiFiPhile
Signed-off-by: HiFiPhile <[email protected]>
2026-06-21fix(host): release spinlock in tuh_deinit to fix multi-rebuild panicrenjie
tuh_rhport_init() calls osal_spin_init(&_usbh_spin), which under OPT_OS_PICO claims a hardware spinlock via critical_section_init(). There was no osal_spin_deinit(), so tuh_deinit() never released it: every host init/deinit cycle leaked one spinlock. RP2350 has a small spinlock pool, so a few usb_host rebuilds exhaust it and hw_claim_unused_from_range() panics (the long-standing "crashes on the 4th rebuild" bug). Add osal_spin_deinit() to all OSAL backends (critical_section_deinit for pico; no-op for none/freertos) and call it in tuh_deinit(). Verified 20/20 deinit+rebuild cycles on RP2350-Zero and Waveshare RP2350-USB-A (previously panicked on the 4th). Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
2026-05-29Implement asynchronous control transfer queuing for USB host stackhathach
- Added a pending FIFO queue for asynchronous control transfers when the active slot is busy. - Introduced `control_xfer_dispatch_pending` to handle queued transfers on slot availability. - Improved synchronization for blocking and non-blocking transfer modes, preventing deadlocks in RTOS. - Refactored and renamed related functions for clarity and consistency. - Enhanced error handling and callback invocation for failed or stale transfers.
2026-05-27osal add osal_task_get_current_handle()hathach
2026-03-27osal/mynewt: fix queue receive tiemoutHiFiPhile
Signed-off-by: HiFiPhile <[email protected]>
2026-03-13remove TUSB_MCU_VENDOR_ESPRESSIF, use ESP_PLATFORM for Espressifhathach
2026-03-05add IAR warning flags to cmake build and fix themhathach
2026-03-05improve threadx support, add multi ROTS support for board_test and msc_dual_lunhathach
2026-03-05Merge branch 'master' into fork/armusin/threadx_osalhathach
2026-02-27add osal_time_millis() to osal requirementhathach
implement tusb_time_millis_api() with osal_time_millis() when OS is not NONE
2026-02-27add back deferred attachment queue, retry get hub port status if reset ↵hathach
change not set after 20ms
2026-02-09Merge branch 'hathach:master' into threadx_osalAleksei Musin
2026-02-09cleanAleksei Musin
2025-12-30tusb_fifo remove item_size make it fifo of byteshathach
2025-12-22Remove trailing whitespaceAleksei Musin
2025-12-22ThreadX OSAL header is added. Docs are updated.Aleksei Musin
2025-12-16make fifo access mode fixed addr work with 16 bit alsohathach
2025-11-19Merge pull request #3151 from HiFiPhile/lock_cntHa Thach
osal/none: add nested count to spin lock
2025-11-19return if spin is underflowhathach
2025-11-07fix more alerts found by pvs-studiohathach
2025-11-07osal/none: add nested count to spin lockHiFiPhile
Signed-off-by: HiFiPhile <[email protected]>
2025-11-03fixing alert by scanning toolhathach
2025-10-28fix Identifiers that start with '__' or '_[A-Z]' are reserved.hathach
fix compiling with nuc family
2025-10-24fix more warningshathach
2025-10-24fix several warningshathach
2025-09-17Replace old delay functions by tusb_time_delay_ms_apiHiFiPhile
Signed-off-by: HiFiPhile <[email protected]>
2025-08-24Fix osal_spin_unlock for mynewtJerzy Kasenberg
Mynewt version for osal_spin_unlock() called OS_ENTER_CRITICAL instead of OS_EXIT_CRITICAL. Signed-off-by: Jerzy Kasenberg <[email protected]>
2025-05-21osal_spin skipping lock/unlock when executed in isrhathach
2025-05-20rename osal_critcal to osal_spinlockhathach
add spinlock implementation for most rtos
2025-05-19implement osal critical for none/freertos/pico-sdkhathach
2025-05-19add osal_critical API() for use with dwc2hathach
2025-02-11remove freeeRTOSConfig in exampleshathach
2025-01-21zephyrhathach
2024-06-27remove double semicolon since ISO C not allow itDavide Gerhard
ISO C does not allow extra ';' outside of a function [-Werror=pedantic]
2024-04-16add TU_ASSERT() to check for adding new usb eventhathach
2024-03-25add delete API for rtthreadhathach
2024-03-22update osal APIhathach
add osal_semaphore_delete(), osal_mutex_delete(), osal_queue_delete()
2024-02-16use rt-thread 5+ mq recv apiKai
2023-11-23minor-updatehathach
2023-08-03add osal queue name if neededhathach
also mass change configQUEUE_REGISTRY_SIZE = 4
2023-08-03Merge branch 'master' into pr2091hathach
2023-08-03Revert "Name queues for easier FreeRTOS debugging with task- and queue-aware ↵hathach
debuggers" This reverts commit 11fba59319d81fb9502fbf399abb4fe27cf3fa29.
2023-07-18osal_none: make it possible to override the task delay functionAladdin Bakosh
2023-06-28Name queues for easier FreeRTOS debugging with task- and queue-aware debuggersDave Nadler
2023-06-01For FreeRTOS kernel-aware debugging, when queue registry is enabled, label ↵Dave Nadler
tinyUSB queue
2023-03-17fix trailing space and new linehathach
temporarily disable codespell
2023-02-22move and add optional tusb_app_virt_to_phys/tusb_app_phys_to_virthathach
also add place holder for tusb_app_dcache_flush() and tusb_app_dcache_invalidate()