diff options
| author | Ha Thach <[email protected]> | 2022-04-20 23:32:50 +0700 |
|---|---|---|
| committer | GitHub <[email protected]> | 2022-04-20 23:32:50 +0700 |
| commit | 55a5fd59d7263289f5c26d52ab206ed571cc1e0c (patch) | |
| tree | 17f0c6d038ea9a73fdc78d94f15e50f2b3233b5c /src/host/usbh.c | |
| parent | 9c8c5c1c53214b8954bb28c33a496b5b423d5ecc (diff) | |
| parent | 87572871d586856242c1fa44b1532a09e624162d (diff) | |
Merge pull request #1440 from hathach/osal-queue-timeout
Osal queue timeout
Diffstat (limited to 'src/host/usbh.c')
| -rw-r--r-- | src/host/usbh.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/src/host/usbh.c b/src/host/usbh.c index f534070de..80d176142 100644 --- a/src/host/usbh.c +++ b/src/host/usbh.c @@ -392,8 +392,10 @@ bool tuh_init(uint8_t rhport) } @endcode */ -void tuh_task(void) +void tuh_task_ext(uint32_t timeout_ms, bool in_isr) { + (void) in_isr; // not implemented yet + // Skip if stack is not initialized if ( !tusb_inited() ) return; @@ -401,7 +403,7 @@ void tuh_task(void) while (1) { hcd_event_t event; - if ( !osal_queue_receive(_usbh_q, &event) ) return; + if ( !osal_queue_receive(_usbh_q, &event, timeout_ms) ) return; switch (event.event_id) { @@ -497,6 +499,11 @@ void tuh_task(void) default: break; } + +#if CFG_TUSB_OS != OPT_OS_NONE && CFG_TUSB_OS != OPT_OS_PICO + // return if there is no more events, for application to run other background + if (osal_queue_empty(_usbh_q)) return; +#endif } } |
