Searched refs:prod_idx (Results 1 - 21 of 21) sorted by relevance

/linux-master/include/linux/qed/
H A Dqed_chain.h60 u16 prod_idx; member in struct:qed_chain_u16
66 u32 prod_idx; member in struct:qed_chain_u32
188 return chain->u.chain16.prod_idx;
198 return chain->u.chain32.prod_idx;
374 if ((p_chain->u.chain16.prod_idx &
376 p_prod_idx = &p_chain->u.chain16.prod_idx;
381 p_chain->u.chain16.prod_idx++;
383 if ((p_chain->u.chain32.prod_idx &
385 p_prod_idx = &p_chain->u.chain32.prod_idx;
390 p_chain->u.chain32.prod_idx
576 qed_chain_set_prod(struct qed_chain *p_chain, u32 prod_idx, void *p_prod_elem) argument
[all...]
/linux-master/drivers/net/ethernet/huawei/hinic/
H A Dhinic_hw_qp.h181 void hinic_sq_write_db(struct hinic_sq *sq, u16 prod_idx, unsigned int wqe_size,
185 unsigned int wqe_size, u16 *prod_idx);
189 void hinic_sq_write_wqe(struct hinic_sq *sq, u16 prod_idx,
207 unsigned int wqe_size, u16 *prod_idx);
209 void hinic_rq_write_wqe(struct hinic_rq *rq, u16 prod_idx,
227 void hinic_rq_prepare_wqe(struct hinic_rq *rq, u16 prod_idx,
230 void hinic_rq_update(struct hinic_rq *rq, u16 prod_idx);
H A Dhinic_hw_qp.c54 #define SQ_DB_PI_HI(prod_idx) ((prod_idx) >> SQ_DB_PI_HI_SHIFT)
57 #define SQ_DB_PI_LOW(prod_idx) ((prod_idx) & SQ_DB_PI_LOW_MASK)
102 pi_start = atomic_read(&wq->prod_idx);
164 pi_start = atomic_read(&wq->prod_idx);
610 * @prod_idx: pi value for the doorbell
615 static u32 sq_prepare_db(struct hinic_sq *sq, u16 prod_idx, unsigned int cos) argument
618 u8 hi_prod_idx = SQ_DB_PI_HI(SQ_MASKED_IDX(sq, prod_idx));
631 * @prod_idx
635 hinic_sq_write_db(struct hinic_sq *sq, u16 prod_idx, unsigned int wqe_size, unsigned int cos) argument
657 hinic_sq_get_wqe(struct hinic_sq *sq, unsigned int wqe_size, u16 *prod_idx) argument
687 hinic_sq_write_wqe(struct hinic_sq *sq, u16 prod_idx, struct hinic_sq_wqe *sq_wqe, struct sk_buff *skb, unsigned int wqe_size) argument
796 hinic_rq_get_wqe(struct hinic_rq *rq, unsigned int wqe_size, u16 *prod_idx) argument
815 hinic_rq_write_wqe(struct hinic_rq *rq, u16 prod_idx, struct hinic_rq_wqe *rq_wqe, struct sk_buff *skb) argument
940 hinic_rq_prepare_wqe(struct hinic_rq *rq, u16 prod_idx, struct hinic_rq_wqe *rq_wqe, struct hinic_sge *sge) argument
968 hinic_rq_update(struct hinic_rq *rq, u16 prod_idx) argument
[all...]
H A Dhinic_hw_wq.h45 atomic_t prod_idx; member in struct:hinic_wq
97 u16 *prod_idx);
H A Dhinic_hw_api_cmd.c93 u32 addr, prod_idx; local
96 prod_idx = hinic_hwif_read_reg(hwif, addr);
98 prod_idx = HINIC_API_CMD_PI_CLEAR(prod_idx, IDX);
100 prod_idx |= HINIC_API_CMD_PI_SET(chain->prod_idx, IDX);
102 hinic_hwif_write_reg(hwif, addr, prod_idx);
145 u32 prod_idx; local
150 prod_idx = chain->prod_idx;
[all...]
H A Dhinic_hw_cmdq.c179 enum hinic_mod_type mod, u8 cmd, u16 prod_idx,
204 ctrl->ctrl_info = HINIC_CMDQ_CTRL_SET(prod_idx, PI) |
248 enum hinic_mod_type mod, u8 cmd, u16 prod_idx)
265 prod_idx, complete_format, DATA_SGE,
276 enum hinic_mod_type mod, u8 cmd, u16 prod_idx)
295 cmdq_prepare_wqe_ctrl(wqe, wrapped, ack_type, mod, cmd, prod_idx,
312 enum hinic_cmdq_type cmdq_type, u16 prod_idx)
314 *db_info = HINIC_CMDQ_DB_INFO_SET(UPPER_8_BITS(prod_idx), HI_PROD_IDX) |
321 enum hinic_cmdq_type cmdq_type, u16 prod_idx)
325 cmdq_fill_db(&db_info, cmdq_type, prod_idx);
177 cmdq_prepare_wqe_ctrl(struct hinic_cmdq_wqe *wqe, int wrapped, enum hinic_cmd_ack_type ack_type, enum hinic_mod_type mod, u8 cmd, u16 prod_idx, enum completion_format complete_format, enum data_format data_format, enum bufdesc_len buf_len) argument
243 cmdq_set_lcmd_wqe(struct hinic_cmdq_wqe *wqe, enum cmdq_cmd_type cmd_type, struct hinic_cmdq_buf *buf_in, struct hinic_cmdq_buf *buf_out, int wrapped, enum hinic_cmd_ack_type ack_type, enum hinic_mod_type mod, u8 cmd, u16 prod_idx) argument
271 cmdq_set_direct_wqe(struct hinic_cmdq_wqe *wqe, enum cmdq_cmd_type cmd_type, void *buf_in, u16 in_size, struct hinic_cmdq_buf *buf_out, int wrapped, enum hinic_cmd_ack_type ack_type, enum hinic_mod_type mod, u8 cmd, u16 prod_idx) argument
311 cmdq_fill_db(u32 *db_info, enum hinic_cmdq_type cmdq_type, u16 prod_idx) argument
320 cmdq_set_db(struct hinic_cmdq *cmdq, enum hinic_cmdq_type cmdq_type, u16 prod_idx) argument
584 cmdq_update_errcode(struct hinic_cmdq *cmdq, u16 prod_idx, int errcode) argument
600 u16 prod_idx = cons_idx; local
[all...]
H A Dhinic_hw_wq.c563 atomic_set(&wq->prod_idx, 0);
667 atomic_set(&wq[i].prod_idx, 0);
736 * @prod_idx: returned pi
741 u16 *prod_idx)
746 *prod_idx = MASKED_WQE_IDX(wq, atomic_read(&wq->prod_idx));
755 end_prod_idx = atomic_add_return(num_wqebbs, &wq->prod_idx);
767 *prod_idx = curr_prod_idx;
772 if (curr_pg != end_pg || end_prod_idx < *prod_idx) {
775 copy_wqe_to_shadow(wq, shadow_addr, num_wqebbs, *prod_idx);
740 hinic_get_wqe(struct hinic_wq *wq, unsigned int wqe_size, u16 *prod_idx) argument
893 u16 prod_idx; local
[all...]
H A Dhinic_tx.c494 u16 prod_idx, q_id = skb->queue_mapping; local
512 sq_wqe = hinic_sq_get_wqe(txq->sq, wqe_size, &prod_idx);
516 sq_wqe = hinic_sq_get_wqe(txq->sq, wqe_size, &prod_idx);
534 hinic_sq_write_wqe(txq->sq, prod_idx, sq_wqe, skb, wqe_size);
539 hinic_sq_write_db(txq->sq, prod_idx, wqe_size, 0);
555 u16 prod_idx, q_id = skb->queue_mapping; local
593 sq_wqe = hinic_sq_get_wqe(txq->sq, wqe_size, &prod_idx);
600 sq_wqe = hinic_sq_get_wqe(txq->sq, wqe_size, &prod_idx);
623 hinic_sq_write_wqe(txq->sq, prod_idx, sq_wqe, skb, wqe_size);
628 hinic_sq_write_db(txq->sq, prod_idx, wqe_siz
[all...]
H A Dhinic_rx.c201 u16 prod_idx; local
218 &prod_idx);
224 hinic_rq_prepare_wqe(rxq->rq, prod_idx, rq_wqe, &sge);
226 hinic_rq_write_wqe(rxq->rq, prod_idx, rq_wqe, skb);
233 hinic_rq_update(rxq->rq, prod_idx);
H A Dhinic_hw_api_cmd.h180 u32 prod_idx; member in struct:hinic_api_cmd_chain
H A Dhinic_debugfs.c31 return atomic_read(&wq->prod_idx) & wq->mask;
65 return atomic_read(&wq->prod_idx) & wq->mask;
H A Dhinic_main.c829 sw_pi = atomic_read(&sq->wq->prod_idx) & sq->wq->mask;
/linux-master/drivers/scsi/qedi/
H A Dqedi_debugfs.c142 u16 prod_idx; local
154 prod_idx = (sb->pi_array[QEDI_PROTO_CQ_PROD_IDX] &
156 seq_printf(s, "SB PROD IDX: %d\n", prod_idx);
H A Dqedi_main.c1267 u16 prod_idx; local
1274 prod_idx = sb->pi_array[QEDI_PROTO_CQ_PROD_IDX];
1276 if (prod_idx >= QEDI_CQ_SIZE)
1277 prod_idx = prod_idx % QEDI_CQ_SIZE;
1281 "Before: global queue=%p prod_idx=%d cons_idx=%d, sb_id=%d\n",
1282 que, prod_idx, que->cq_cons_idx, fp->sb_id);
1292 while (que->cq_cons_idx != prod_idx) {
1296 "cqe=%p prod_idx=%d cons_idx=%d.\n",
1297 cqe, prod_idx, qu
1321 u16 prod_idx; local
[all...]
/linux-master/drivers/net/ethernet/qualcomm/emac/
H A Demac-mac.c907 u32 prod_idx = (rx_q->rfd.produce_idx << rx_q->produce_shift) & local
910 rx_q->produce_mask, prod_idx);
1442 u32 prod_idx; local
1477 prod_idx = (tx_q->tpd.produce_idx << tx_q->produce_shift) &
1480 tx_q->produce_mask, prod_idx);
/linux-master/drivers/scsi/bnx2i/
H A Dbnx2i.h548 u16 prod_idx; member in struct:bnx2i_5771x_sq_rq_db
H A Dbnx2i_hwi.c250 rq_db->prod_idx = ep->qp.rq_prod_idx;
277 sq_db->prod_idx = ep->qp.sq_prod_idx;
/linux-master/drivers/scsi/qedf/
H A Dqedf_main.c2198 u16 prod_idx; local
2207 prod_idx = sb->pi_array[QEDF_FCOE_PARAMS_GL_RQ_PI];
2209 return (que->cq_prod_idx != prod_idx);
2226 u16 prod_idx; local
2236 prod_idx = sb->pi_array[QEDF_FCOE_PARAMS_GL_RQ_PI];
2242 new_cqes = (prod_idx >= que->cq_prod_idx) ?
2243 (prod_idx - que->cq_prod_idx) :
2244 0x10000 - que->cq_prod_idx + prod_idx;
2247 que->cq_prod_idx = prod_idx;
/linux-master/drivers/net/ethernet/qlogic/qed/
H A Dqed_ll2.c1862 u16 prod_idx = qed_chain_get_prod_idx(p_tx_chain); local
1924 prod_idx, local
/linux-master/drivers/infiniband/hw/bnxt_re/
H A Droce_hsi.h100 __le32 prod_idx; member in struct:cmdq_init
/linux-master/drivers/net/ethernet/broadcom/bnxt/
H A Dbnxt_hsi.h7019 __le32 prod_idx; member in struct:hwrm_ring_free_input

Completed in 375 milliseconds