Lines Matching refs:cqn
77 void mlx4_cq_completion(struct mlx4_dev *dev, u32 cqn)
82 cqn & (dev->caps.num_cqs - 1));
84 mlx4_warn(dev, "Completion event for bogus CQ %08x\n", cqn);
93 void mlx4_cq_event(struct mlx4_dev *dev, u32 cqn, int event_type)
100 cq = radix_tree_lookup(&cq_table->tree, cqn & (dev->caps.num_cqs - 1));
107 mlx4_warn(dev, "Async event for bogus CQ %08x\n", cqn);
142 cq->cqn = mlx4_bitmap_alloc(&cq_table->bitmap);
143 if (cq->cqn == -1)
146 err = mlx4_table_get(dev, &cq_table->table, cq->cqn);
150 err = mlx4_table_get(dev, &cq_table->cmpt_table, cq->cqn);
155 err = radix_tree_insert(&cq_table->tree, cq->cqn, cq);
178 err = mlx4_SW2HW_CQ(dev, mailbox, cq->cqn);
193 radix_tree_delete(&cq_table->tree, cq->cqn);
197 mlx4_table_put(dev, &cq_table->cmpt_table, cq->cqn);
200 mlx4_table_put(dev, &cq_table->table, cq->cqn);
203 mlx4_bitmap_free(&cq_table->bitmap, cq->cqn);
215 err = mlx4_HW2SW_CQ(dev, NULL, cq->cqn);
217 mlx4_warn(dev, "HW2SW_CQ failed (%d) for CQN %06x\n", err, cq->cqn);
222 radix_tree_delete(&cq_table->tree, cq->cqn);
229 mlx4_table_put(dev, &cq_table->table, cq->cqn);
230 mlx4_bitmap_free(&cq_table->bitmap, cq->cqn);