diff options
Diffstat (limited to 'yocto/esp32mod/msgq.h')
| -rwxr-xr-x | yocto/esp32mod/msgq.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/yocto/esp32mod/msgq.h b/yocto/esp32mod/msgq.h new file mode 100755 index 0000000..f0d82f4 --- /dev/null +++ b/yocto/esp32mod/msgq.h @@ -0,0 +1,15 @@ +typedef struct MSGQueue { + uint16_t idx_r; + uint16_t idx_w; + uint16_t size; + unsigned char **array; + spinlock_t lock; + wait_queue_head_t wq; +} MSGQueue; + +int msgq_create(MSGQueue *msgq, uint16_t size); +void msgq_destroy(MSGQueue *msgq); +uint16_t msgq_len(MSGQueue *msgq); +uint16_t msgq_size(MSGQueue *msgq); +int msgq_push(MSGQueue *msgq, unsigned char *buffer); +unsigned char *msgq_pop(MSGQueue *msgq); |
