Lines Matching refs:rq

10 void vnic_rq_init_start(struct vnic_rq *rq, unsigned int cq_index,  in vnic_rq_init_start()  argument
16 unsigned int count = rq->ring.desc_count; in vnic_rq_init_start()
18 paddr = (u64)rq->ring.base_addr | VNIC_PADDR_TARGET; in vnic_rq_init_start()
19 ENIC_BUS_WRITE_8(rq->ctrl, RX_RING_BASE, paddr); in vnic_rq_init_start()
20 ENIC_BUS_WRITE_4(rq->ctrl, RX_RING_SIZE, count); in vnic_rq_init_start()
21 ENIC_BUS_WRITE_4(rq->ctrl, RX_CQ_INDEX, cq_index); in vnic_rq_init_start()
22 ENIC_BUS_WRITE_4(rq->ctrl, RX_ERROR_INTR_ENABLE, error_interrupt_enable); in vnic_rq_init_start()
23 ENIC_BUS_WRITE_4(rq->ctrl, RX_ERROR_INTR_OFFSET, error_interrupt_offset); in vnic_rq_init_start()
24 ENIC_BUS_WRITE_4(rq->ctrl, RX_ERROR_STATUS, 0); in vnic_rq_init_start()
25 ENIC_BUS_WRITE_4(rq->ctrl, RX_FETCH_INDEX, fetch_index); in vnic_rq_init_start()
26 ENIC_BUS_WRITE_4(rq->ctrl, RX_POSTED_INDEX, posted_index); in vnic_rq_init_start()
29 void vnic_rq_init(struct vnic_rq *rq, unsigned int cq_index, in vnic_rq_init() argument
36 fetch_index = ENIC_BUS_READ_4(rq->ctrl, RX_FETCH_INDEX); in vnic_rq_init()
44 vnic_rq_init_start(rq, cq_index, in vnic_rq_init()
48 rq->rxst_idx = 0; in vnic_rq_init()
49 rq->tot_pkts = 0; in vnic_rq_init()
52 unsigned int vnic_rq_error_status(struct vnic_rq *rq) in vnic_rq_error_status() argument
54 return (ENIC_BUS_READ_4(rq->ctrl, RX_ERROR_STATUS)); in vnic_rq_error_status()
57 void vnic_rq_enable(struct vnic_rq *rq) in vnic_rq_enable() argument
59 ENIC_BUS_WRITE_4(rq->ctrl, RX_ENABLE, 1); in vnic_rq_enable()
62 int vnic_rq_disable(struct vnic_rq *rq) in vnic_rq_disable() argument
66 ENIC_BUS_WRITE_4(rq->ctrl, RX_ENABLE, 0); in vnic_rq_disable()
70 if (!(ENIC_BUS_READ_4(rq->ctrl, RX_RUNNING))) in vnic_rq_disable()
75 pr_err("Failed to disable RQ[%d]\n", rq->index); in vnic_rq_disable()
80 void vnic_rq_clean(struct vnic_rq *rq) in vnic_rq_clean() argument
83 unsigned int count = rq->ring.desc_count; in vnic_rq_clean()
85 rq->ring.desc_avail = count - 1; in vnic_rq_clean()
86 rq->rx_nb_hold = 0; in vnic_rq_clean()
89 fetch_index = ENIC_BUS_READ_4(rq->ctrl, RX_FETCH_INDEX); in vnic_rq_clean()
95 ENIC_BUS_WRITE_4(rq->ctrl, RX_POSTED_INDEX, fetch_index); in vnic_rq_clean()