summaryrefslogtreecommitdiff
path: root/src/common
diff options
context:
space:
mode:
authorhathach <[email protected]>2026-05-29 16:16:21 +0700
committerhathach <[email protected]>2026-05-29 16:16:21 +0700
commitd754c0697cbd29874c56254bd97561349fb9a229 (patch)
treee87aac61ceb44b396e8ffe83318042434acc24b4 /src/common
parentc5676382c7d5cad7b6cfe5dc185d9891b89241f2 (diff)
Implement asynchronous control transfer queuing for USB host stack
- 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.
Diffstat (limited to 'src/common')
-rw-r--r--src/common/tusb_types.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/common/tusb_types.h b/src/common/tusb_types.h
index 959fc129a..cb06b89bb 100644
--- a/src/common/tusb_types.h
+++ b/src/common/tusb_types.h
@@ -282,6 +282,7 @@ typedef enum {
XFER_RESULT_FAILED,
XFER_RESULT_STALLED,
XFER_RESULT_TIMEOUT,
+ XFER_RESULT_ABORTED,
XFER_RESULT_INVALID
} xfer_result_t;