Lines Matching defs:wq
36 * level 0 - direct mapping of single wq page
39 * When wq uses level 1, wq_block will hold the allocated indirection
47 static inline u16 hinic3_wq_get_used(const struct hinic3_wq *wq)
49 return READ_ONCE(wq->prod_idx) - READ_ONCE(wq->cons_idx);
52 static inline u16 hinic3_wq_free_wqebbs(struct hinic3_wq *wq)
55 return wq->q_depth - hinic3_wq_get_used(wq) - 1;
58 static inline void *hinic3_wq_get_one_wqebb(struct hinic3_wq *wq, u16 *pi)
60 *pi = wq->prod_idx & wq->idx_mask;
61 wq->prod_idx++;
62 return get_q_element(&wq->qpages, *pi, NULL);
65 static inline void hinic3_wq_put_wqebbs(struct hinic3_wq *wq, u16 num_wqebbs)
67 wq->cons_idx += num_wqebbs;
70 void hinic3_wq_get_multi_wqebbs(struct hinic3_wq *wq,