Lines Matching defs:cq
429 mlx5e_read_cqe_slot(struct mlx5e_cq *cq, u32 cc, void *data)
431 memcpy(data, mlx5_cqwq_get_wqe(&cq->wq, (cc & cq->wq.sz_m1)),
436 mlx5e_write_cqe_slot(struct mlx5e_cq *cq, u32 cc, void *data)
438 memcpy(mlx5_cqwq_get_wqe(&cq->wq, cc & cq->wq.sz_m1),
443 mlx5e_decompress_cqe(struct mlx5e_cq *cq, struct mlx5_cqe64 *title,
453 title->wqe_counter = cpu_to_be16((wqe_counter + i) & cq->wq.sz_m1);
461 (((cq->wq.cc + i) >> cq->wq.log_sz) & 1);
469 mlx5e_decompress_cqes(struct mlx5e_cq *cq)
477 mlx5e_read_cqe_slot(cq, cq->wq.cc, &title);
482 KASSERT(cqe_count <= cq->wq.sz_m1,
483 ("%s: cqe_count %u > cq->wq.sz_m1 %u", __func__,
484 cqe_count, cq->wq.sz_m1));
486 mlx5e_read_cqe_slot(cq, cq->wq.cc + 1, mini_array);
488 mlx5e_decompress_cqe(cq, &title,
491 mlx5e_write_cqe_slot(cq, cq->wq.cc + i, &title);
497 mlx5e_read_cqe_slot(cq, cq->wq.cc + i, mini_array);
517 cqe = mlx5e_get_cqe(&rq->cq);
522 mlx5e_decompress_cqes(&rq->cq);
524 mlx5_cqwq_pop(&rq->cq.wq);
536 mlx5e_dump_err_cqe(&rq->cq, rq->rqn, (const void *)cqe);
614 mlx5_cqwq_update_db_record(&rq->cq.wq);
616 /* ensure cq space is freed before enabling more cqes */
624 struct mlx5e_channel *c = container_of(mcq, struct mlx5e_channel, rq.cq.mcq);
625 struct mlx5e_rq *rq = container_of(mcq, struct mlx5e_rq, cq.mcq);
673 mlx5e_cq_arm(&rq->cq, MLX5_GET_DOORBELL_LOCK(&rq->channel->priv->doorbell_lock));