Lines Matching refs:sbuf

24 uint32_t sbuf_get(struct shared_buf *sbuf, uint8_t *data)  in sbuf_get()  argument
28 if ((sbuf == NULL) || (data == NULL)) in sbuf_get()
31 if (sbuf_is_empty(sbuf)) { in sbuf_get()
36 from = (void *)sbuf + SBUF_HEAD_SIZE + sbuf->head; in sbuf_get()
38 memcpy(data, from, sbuf->ele_size); in sbuf_get()
42 sbuf->head = sbuf_next_ptr(sbuf->head, sbuf->ele_size, sbuf->size); in sbuf_get()
44 return sbuf->ele_size; in sbuf_get()
47 int sbuf_clear_buffered(struct shared_buf *sbuf) in sbuf_clear_buffered() argument
49 if (sbuf == NULL) in sbuf_clear_buffered()
52 sbuf->head = sbuf->tail; in sbuf_clear_buffered()
76 uint32_t sbuf_put(struct shared_buf *sbuf, uint8_t *data, uint32_t max_len) in sbuf_put() argument
78 uint32_t ele_size = sbuf->ele_size; in sbuf_put()
84 next_tail = sbuf_next_ptr(sbuf->tail, ele_size, sbuf->size); in sbuf_put()
86 if ((next_tail == sbuf->head) && ((sbuf->flags & OVERWRITE_EN) == 0U)) { in sbuf_put()
90 if (next_tail == sbuf->head) { in sbuf_put()
92 sbuf->overrun_cnt += sbuf->flags & OVERRUN_CNT_EN; in sbuf_put()
95 to = (void *)sbuf + SBUF_HEAD_SIZE + sbuf->tail; in sbuf_put()
102 sbuf->head = sbuf_next_ptr(sbuf->head, in sbuf_put()
103 ele_size, sbuf->size); in sbuf_put()
105 sbuf->tail = next_tail; in sbuf_put()
115 void sbuf_init(struct shared_buf *sbuf, uint32_t total_size, uint32_t ele_size) in sbuf_init() argument
117 sbuf->magic = SBUF_MAGIC; in sbuf_init()
118 sbuf->ele_size = ele_size; in sbuf_init()
119 sbuf->ele_num = (total_size - SBUF_HEAD_SIZE) / sbuf->ele_size; in sbuf_init()
120 sbuf->size = sbuf->ele_size * sbuf->ele_num; in sbuf_init()
121 sbuf->flags = 0; in sbuf_init()
122 sbuf->overrun_cnt = 0; in sbuf_init()
123 sbuf->head = 0; in sbuf_init()
124 sbuf->tail = 0; in sbuf_init()