aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/infiniband/hw/mlx4/mlx4_ib.h
diff options
context:
space:
mode:
authorVladimir Sokolovsky <vlad@dev.mellanox.co.il>2008-04-17 00:09:33 -0400
committerRoland Dreier <rolandd@cisco.com>2008-04-17 00:09:33 -0400
commitbbf8eed1a0f8949f7385146624f736f829992a70 (patch)
tree5cf6a5c76ca4c038d3ca0f53abc5f2976872696b /drivers/infiniband/hw/mlx4/mlx4_ib.h
parent3fdcb97f0b8d8a29117dc36acd0b15965d2a2160 (diff)
IB/mlx4: Add support for resizing CQs
Signed-off-by: Vladimir Sokolovsky <vlad@mellanox.co.il> Signed-off-by: Roland Dreier <rolandd@cisco.com>
Diffstat (limited to 'drivers/infiniband/hw/mlx4/mlx4_ib.h')
-rw-r--r--drivers/infiniband/hw/mlx4/mlx4_ib.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/infiniband/hw/mlx4/mlx4_ib.h b/drivers/infiniband/hw/mlx4/mlx4_ib.h
index ef8ad96e1432..9e637323c155 100644
--- a/drivers/infiniband/hw/mlx4/mlx4_ib.h
+++ b/drivers/infiniband/hw/mlx4/mlx4_ib.h
@@ -78,13 +78,21 @@ struct mlx4_ib_cq_buf {
78 struct mlx4_mtt mtt; 78 struct mlx4_mtt mtt;
79}; 79};
80 80
81struct mlx4_ib_cq_resize {
82 struct mlx4_ib_cq_buf buf;
83 int cqe;
84};
85
81struct mlx4_ib_cq { 86struct mlx4_ib_cq {
82 struct ib_cq ibcq; 87 struct ib_cq ibcq;
83 struct mlx4_cq mcq; 88 struct mlx4_cq mcq;
84 struct mlx4_ib_cq_buf buf; 89 struct mlx4_ib_cq_buf buf;
90 struct mlx4_ib_cq_resize *resize_buf;
85 struct mlx4_ib_db db; 91 struct mlx4_ib_db db;
86 spinlock_t lock; 92 spinlock_t lock;
93 struct mutex resize_mutex;
87 struct ib_umem *umem; 94 struct ib_umem *umem;
95 struct ib_umem *resize_umem;
88}; 96};
89 97
90struct mlx4_ib_mr { 98struct mlx4_ib_mr {
@@ -255,6 +263,7 @@ struct ib_mr *mlx4_ib_reg_user_mr(struct ib_pd *pd, u64 start, u64 length,
255int mlx4_ib_dereg_mr(struct ib_mr *mr); 263int mlx4_ib_dereg_mr(struct ib_mr *mr);
256 264
257int mlx4_ib_modify_cq(struct ib_cq *cq, u16 cq_count, u16 cq_period); 265int mlx4_ib_modify_cq(struct ib_cq *cq, u16 cq_count, u16 cq_period);
266int mlx4_ib_resize_cq(struct ib_cq *ibcq, int entries, struct ib_udata *udata);
258struct ib_cq *mlx4_ib_create_cq(struct ib_device *ibdev, int entries, int vector, 267struct ib_cq *mlx4_ib_create_cq(struct ib_device *ibdev, int entries, int vector,
259 struct ib_ucontext *context, 268 struct ib_ucontext *context,
260 struct ib_udata *udata); 269 struct ib_udata *udata);