Lines Matching refs:eq

110 static inline void *ocrdma_get_eqe(struct ocrdma_eq *eq)  in ocrdma_get_eqe()  argument
112 return eq->q.va + (eq->q.tail * sizeof(struct ocrdma_eqe)); in ocrdma_get_eqe()
115 static inline void ocrdma_eq_inc_tail(struct ocrdma_eq *eq) in ocrdma_eq_inc_tail() argument
117 eq->q.tail = (eq->q.tail + 1) & (OCRDMA_EQ_LEN - 1); in ocrdma_eq_inc_tail()
430 static int ocrdma_mbx_create_eq(struct ocrdma_dev *dev, struct ocrdma_eq *eq) in ocrdma_mbx_create_eq() argument
445 ocrdma_build_q_pages(&cmd->pa[0], cmd->num_pages, eq->q.dma, in ocrdma_mbx_create_eq()
450 eq->q.id = rsp->vector_eqid & 0xffff; in ocrdma_mbx_create_eq()
451 eq->vector = (rsp->vector_eqid >> 16) & 0xffff; in ocrdma_mbx_create_eq()
452 eq->q.created = true; in ocrdma_mbx_create_eq()
458 struct ocrdma_eq *eq, u16 q_len) in ocrdma_create_eq() argument
462 status = ocrdma_alloc_q(dev, &eq->q, OCRDMA_EQ_LEN, in ocrdma_create_eq()
467 status = ocrdma_mbx_create_eq(dev, eq); in ocrdma_create_eq()
470 eq->dev = dev; in ocrdma_create_eq()
471 ocrdma_ring_eq_db(dev, eq->q.id, true, true, 0); in ocrdma_create_eq()
475 ocrdma_free_q(dev, &eq->q); in ocrdma_create_eq()
479 int ocrdma_get_irq(struct ocrdma_dev *dev, struct ocrdma_eq *eq) in ocrdma_get_irq() argument
486 irq = dev->nic_info.msix.vector_list[eq->vector]; in ocrdma_get_irq()
490 static void _ocrdma_destroy_eq(struct ocrdma_dev *dev, struct ocrdma_eq *eq) in _ocrdma_destroy_eq() argument
492 if (eq->q.created) { in _ocrdma_destroy_eq()
493 ocrdma_mbx_delete_q(dev, &eq->q, QTYPE_EQ); in _ocrdma_destroy_eq()
494 ocrdma_free_q(dev, &eq->q); in _ocrdma_destroy_eq()
498 static void ocrdma_destroy_eq(struct ocrdma_dev *dev, struct ocrdma_eq *eq) in ocrdma_destroy_eq() argument
505 ocrdma_ring_eq_db(dev, eq->q.id, false, false, 0); in ocrdma_destroy_eq()
507 irq = ocrdma_get_irq(dev, eq); in ocrdma_destroy_eq()
508 free_irq(irq, eq); in ocrdma_destroy_eq()
509 _ocrdma_destroy_eq(dev, eq); in ocrdma_destroy_eq()
522 struct ocrdma_queue_info *eq) in ocrdma_mbx_mq_cq_create() argument
538 cmd->eqn = eq->id; in ocrdma_mbx_mq_cq_create()
993 struct ocrdma_eq *eq = handle; in ocrdma_irq_handler() local
994 struct ocrdma_dev *dev = eq->dev; in ocrdma_irq_handler()
999 int budget = eq->cq_cnt; in ocrdma_irq_handler()
1002 ptr = ocrdma_get_eqe(eq); in ocrdma_irq_handler()
1009 eq->q.id, eqe.id_valid); in ocrdma_irq_handler()
1015 ocrdma_ring_eq_db(dev, eq->q.id, false, true, 1); in ocrdma_irq_handler()
1021 ocrdma_eq_inc_tail(eq); in ocrdma_irq_handler()
1031 eq->aic_obj.eq_intr_cnt++; in ocrdma_irq_handler()
1032 ocrdma_ring_eq_db(dev, eq->q.id, true, true, 0); in ocrdma_irq_handler()
3113 static int ocrdma_mbx_modify_eqd(struct ocrdma_dev *dev, struct ocrdma_eq *eq, in ocrdma_mbx_modify_eqd() argument
3128 cmd->cmd.set_eqd[i].eq_id = eq[i].q.id; in ocrdma_mbx_modify_eqd()
3131 (eq[i].aic_obj.prev_eqd * 65)/100; in ocrdma_mbx_modify_eqd()
3141 static int ocrdma_modify_eqd(struct ocrdma_dev *dev, struct ocrdma_eq *eq, in ocrdma_modify_eqd() argument
3148 ocrdma_mbx_modify_eqd(dev, &eq[i], num_eqs); in ocrdma_modify_eqd()
3153 ocrdma_mbx_modify_eqd(dev, eq, num); in ocrdma_modify_eqd()
3162 struct ocrdma_eq *eq = 0; in ocrdma_eqd_set_task() local
3167 eq = &dev->eq_tbl[i]; in ocrdma_eqd_set_task()
3168 if (eq->aic_obj.eq_intr_cnt > eq->aic_obj.prev_eq_intr_cnt) { in ocrdma_eqd_set_task()
3169 eq_intr = eq->aic_obj.eq_intr_cnt - in ocrdma_eqd_set_task()
3170 eq->aic_obj.prev_eq_intr_cnt; in ocrdma_eqd_set_task()
3172 (eq->aic_obj.prev_eqd == EQ_AIC_MIN_EQD)) { in ocrdma_eqd_set_task()
3173 eq->aic_obj.prev_eqd = EQ_AIC_MAX_EQD; in ocrdma_eqd_set_task()
3176 (eq->aic_obj.prev_eqd == EQ_AIC_MAX_EQD)) { in ocrdma_eqd_set_task()
3177 eq->aic_obj.prev_eqd = EQ_AIC_MIN_EQD; in ocrdma_eqd_set_task()
3181 eq->aic_obj.prev_eq_intr_cnt = eq->aic_obj.eq_intr_cnt; in ocrdma_eqd_set_task()