diff options
| author | hathach <[email protected]> | 2020-08-07 12:13:13 +0700 |
|---|---|---|
| committer | hathach <[email protected]> | 2020-08-07 12:13:13 +0700 |
| commit | 9df8057702fcbc8086b223c164e1734db7beca25 (patch) | |
| tree | 5faef86eca48cc7664ae0b29db3e885edba75bdb /src/osal/osal_none.h | |
| parent | c14c0cfc9fec9101b63df682c5fa5ac0576de0f8 (diff) | |
| parent | c682c30fa6a99a91d02496de39a752b5c96a4634 (diff) | |
Merge branch 'master' into add-app-driver
Diffstat (limited to 'src/osal/osal_none.h')
| -rw-r--r-- | src/osal/osal_none.h | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/src/osal/osal_none.h b/src/osal/osal_none.h index b27e628a9..0ac5e8aac 100644 --- a/src/osal/osal_none.h +++ b/src/osal/osal_none.h @@ -142,7 +142,7 @@ typedef osal_queue_def_t* osal_queue_t; }\ } -// lock queue by disable usb isr +// lock queue by disable USB interrupt static inline void _osal_q_lock(osal_queue_t qhdl) { (void) qhdl; @@ -176,8 +176,7 @@ static inline osal_queue_t osal_queue_create(osal_queue_def_t* qdef) return (osal_queue_t) qdef; } -// non blocking -static inline bool osal_queue_receive(osal_queue_t const qhdl, void* data) +static inline bool osal_queue_receive(osal_queue_t qhdl, void* data) { _osal_q_lock(qhdl); bool success = tu_fifo_read(&qhdl->ff, data); @@ -186,7 +185,7 @@ static inline bool osal_queue_receive(osal_queue_t const qhdl, void* data) return success; } -static inline bool osal_queue_send(osal_queue_t const qhdl, void const * data, bool in_isr) +static inline bool osal_queue_send(osal_queue_t qhdl, void const * data, bool in_isr) { if (!in_isr) { _osal_q_lock(qhdl); @@ -203,6 +202,13 @@ static inline bool osal_queue_send(osal_queue_t const qhdl, void const * data, b return success; } +static inline bool osal_queue_empty(osal_queue_t qhdl) +{ + // Skip queue lock/unlock since this function is primarily called + // with interrupt disabled before going into low power mode + return tu_fifo_empty(&qhdl->ff); +} + #ifdef __cplusplus } #endif |
