Lines Matching refs:prod_idx
565 atomic_set(&wq->prod_idx, 0); in hinic_wq_allocate()
669 atomic_set(&wq[i].prod_idx, 0); in hinic_wqs_cmdq_alloc()
743 u16 *prod_idx) in hinic_get_wqe() argument
748 *prod_idx = MASKED_WQE_IDX(wq, atomic_read(&wq->prod_idx)); in hinic_get_wqe()
757 end_prod_idx = atomic_add_return(num_wqebbs, &wq->prod_idx); in hinic_get_wqe()
769 *prod_idx = curr_prod_idx; in hinic_get_wqe()
774 if (curr_pg != end_pg || end_prod_idx < *prod_idx) { in hinic_get_wqe()
777 copy_wqe_to_shadow(wq, shadow_addr, num_wqebbs, *prod_idx); in hinic_get_wqe()
779 wq->shadow_idx[curr_pg] = *prod_idx; in hinic_get_wqe()
783 return WQ_PAGE_ADDR(wq, *prod_idx) + WQE_PAGE_OFF(wq, *prod_idx); in hinic_get_wqe()
795 atomic_sub(num_wqebbs, &wq->prod_idx); in hinic_return_wqe()
895 u16 prod_idx; in hinic_write_wqe() local
900 prod_idx = wq->shadow_idx[curr_pg]; in hinic_write_wqe()
904 copy_wqe_from_shadow(wq, shadow_addr, num_wqebbs, prod_idx); in hinic_write_wqe()