diff options
author | Vladimir Sokolovsky <vlad@dev.mellanox.co.il> | 2008-04-17 00:09:33 -0400 |
---|---|---|
committer | Roland Dreier <rolandd@cisco.com> | 2008-04-17 00:09:33 -0400 |
commit | bbf8eed1a0f8949f7385146624f736f829992a70 (patch) | |
tree | 5cf6a5c76ca4c038d3ca0f53abc5f2976872696b /drivers/infiniband/hw/mlx4/mlx4_ib.h | |
parent | 3fdcb97f0b8d8a29117dc36acd0b15965d2a2160 (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.h | 9 |
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 | ||
81 | struct mlx4_ib_cq_resize { | ||
82 | struct mlx4_ib_cq_buf buf; | ||
83 | int cqe; | ||
84 | }; | ||
85 | |||
81 | struct mlx4_ib_cq { | 86 | struct 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 | ||
90 | struct mlx4_ib_mr { | 98 | struct mlx4_ib_mr { |
@@ -255,6 +263,7 @@ struct ib_mr *mlx4_ib_reg_user_mr(struct ib_pd *pd, u64 start, u64 length, | |||
255 | int mlx4_ib_dereg_mr(struct ib_mr *mr); | 263 | int mlx4_ib_dereg_mr(struct ib_mr *mr); |
256 | 264 | ||
257 | int mlx4_ib_modify_cq(struct ib_cq *cq, u16 cq_count, u16 cq_period); | 265 | int mlx4_ib_modify_cq(struct ib_cq *cq, u16 cq_count, u16 cq_period); |
266 | int mlx4_ib_resize_cq(struct ib_cq *ibcq, int entries, struct ib_udata *udata); | ||
258 | struct ib_cq *mlx4_ib_create_cq(struct ib_device *ibdev, int entries, int vector, | 267 | struct 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); |