Lines Matching refs:aeq
3935 enum irdma_status_code irdma_sc_aeq_init(struct irdma_sc_aeq *aeq, in irdma_sc_aeq_init() argument
3949 aeq->size = sizeof(*aeq); in irdma_sc_aeq_init()
3950 aeq->polarity = 1; in irdma_sc_aeq_init()
3951 aeq->aeqe_base = (struct irdma_sc_aeqe *)info->aeqe_base; in irdma_sc_aeq_init()
3952 aeq->dev = info->dev; in irdma_sc_aeq_init()
3953 aeq->elem_cnt = info->elem_cnt; in irdma_sc_aeq_init()
3954 aeq->aeq_elem_pa = info->aeq_elem_pa; in irdma_sc_aeq_init()
3955 IRDMA_RING_INIT(aeq->aeq_ring, aeq->elem_cnt); in irdma_sc_aeq_init()
3956 aeq->virtual_map = info->virtual_map; in irdma_sc_aeq_init()
3957 aeq->pbl_list = (aeq->virtual_map ? info->pbl_list : NULL); in irdma_sc_aeq_init()
3958 aeq->pbl_chunk_size = (aeq->virtual_map ? info->pbl_chunk_size : 0); in irdma_sc_aeq_init()
3959 aeq->first_pm_pbl_idx = (aeq->virtual_map ? info->first_pm_pbl_idx : 0); in irdma_sc_aeq_init()
3960 aeq->msix_idx = info->msix_idx; in irdma_sc_aeq_init()
3961 info->dev->aeq = aeq; in irdma_sc_aeq_init()
3972 static enum irdma_status_code irdma_sc_aeq_create(struct irdma_sc_aeq *aeq, in irdma_sc_aeq_create() argument
3979 cqp = aeq->dev->cqp; in irdma_sc_aeq_create()
3983 set_64bit_val(wqe, 16, aeq->elem_cnt); in irdma_sc_aeq_create()
3985 (aeq->virtual_map ? 0 : aeq->aeq_elem_pa)); in irdma_sc_aeq_create()
3987 (aeq->virtual_map ? aeq->first_pm_pbl_idx : 0)); in irdma_sc_aeq_create()
3990 FIELD_PREP(IRDMA_CQPSQ_AEQ_LPBLSIZE, aeq->pbl_chunk_size) | in irdma_sc_aeq_create()
3991 FIELD_PREP(IRDMA_CQPSQ_AEQ_VMAP, aeq->virtual_map) | in irdma_sc_aeq_create()
4011 static enum irdma_status_code irdma_sc_aeq_destroy(struct irdma_sc_aeq *aeq, in irdma_sc_aeq_destroy() argument
4019 dev = aeq->dev; in irdma_sc_aeq_destroy()
4026 set_64bit_val(wqe, 16, aeq->elem_cnt); in irdma_sc_aeq_destroy()
4027 set_64bit_val(wqe, 48, aeq->first_pm_pbl_idx); in irdma_sc_aeq_destroy()
4029 FIELD_PREP(IRDMA_CQPSQ_AEQ_LPBLSIZE, aeq->pbl_chunk_size) | in irdma_sc_aeq_destroy()
4030 FIELD_PREP(IRDMA_CQPSQ_AEQ_VMAP, aeq->virtual_map) | in irdma_sc_aeq_destroy()
4048 enum irdma_status_code irdma_sc_get_next_aeqe(struct irdma_sc_aeq *aeq, in irdma_sc_get_next_aeqe() argument
4057 aeqe = IRDMA_GET_CURRENT_AEQ_ELEM(aeq); in irdma_sc_get_next_aeqe()
4061 if (aeq->polarity != polarity) in irdma_sc_get_next_aeqe()
4190 IRDMA_RING_MOVE_TAIL(aeq->aeq_ring); in irdma_sc_get_next_aeqe()
4191 if (!IRDMA_RING_CURRENT_TAIL(aeq->aeq_ring)) in irdma_sc_get_next_aeqe()
4192 aeq->polarity ^= 1; in irdma_sc_get_next_aeqe()
5050 status = irdma_sc_aeq_destroy(pcmdinfo->in.u.aeq_destroy.aeq, in irdma_exec_cqp_cmd()
5061 status = irdma_sc_aeq_create(pcmdinfo->in.u.aeq_create.aeq, in irdma_exec_cqp_cmd()