diff options
author | Joachim Fenkes <fenkes@de.ibm.com> | 2007-07-09 09:25:10 -0400 |
---|---|---|
committer | Roland Dreier <rolandd@cisco.com> | 2007-07-09 23:12:27 -0400 |
commit | a6a12947fbf4a1782535468d756b0d44babf9760 (patch) | |
tree | 4819ad9abd03f92e51c076745e7068028d06b105 /drivers/infiniband/hw/ehca/ehca_iverbs.h | |
parent | 9a79fc0a1b815cbd05a8e37ea838acfccb7235cc (diff) |
IB/ehca: add Shared Receive Queue support
Support SRQs on eHCA2. Since an SRQ is a QP for eHCA2, a lot of code
(structures, create, destroy, post_recv) can be shared between QP and SRQ.
Signed-off-by: Joachim Fenkes <fenkes@de.ibm.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
Diffstat (limited to 'drivers/infiniband/hw/ehca/ehca_iverbs.h')
-rw-r--r-- | drivers/infiniband/hw/ehca/ehca_iverbs.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/drivers/infiniband/hw/ehca/ehca_iverbs.h b/drivers/infiniband/hw/ehca/ehca_iverbs.h index 37e7fe0908cf..fd84a804814c 100644 --- a/drivers/infiniband/hw/ehca/ehca_iverbs.h +++ b/drivers/infiniband/hw/ehca/ehca_iverbs.h | |||
@@ -154,6 +154,21 @@ int ehca_post_send(struct ib_qp *qp, struct ib_send_wr *send_wr, | |||
154 | int ehca_post_recv(struct ib_qp *qp, struct ib_recv_wr *recv_wr, | 154 | int ehca_post_recv(struct ib_qp *qp, struct ib_recv_wr *recv_wr, |
155 | struct ib_recv_wr **bad_recv_wr); | 155 | struct ib_recv_wr **bad_recv_wr); |
156 | 156 | ||
157 | int ehca_post_srq_recv(struct ib_srq *srq, | ||
158 | struct ib_recv_wr *recv_wr, | ||
159 | struct ib_recv_wr **bad_recv_wr); | ||
160 | |||
161 | struct ib_srq *ehca_create_srq(struct ib_pd *pd, | ||
162 | struct ib_srq_init_attr *init_attr, | ||
163 | struct ib_udata *udata); | ||
164 | |||
165 | int ehca_modify_srq(struct ib_srq *srq, struct ib_srq_attr *attr, | ||
166 | enum ib_srq_attr_mask attr_mask, struct ib_udata *udata); | ||
167 | |||
168 | int ehca_query_srq(struct ib_srq *srq, struct ib_srq_attr *srq_attr); | ||
169 | |||
170 | int ehca_destroy_srq(struct ib_srq *srq); | ||
171 | |||
157 | u64 ehca_define_sqp(struct ehca_shca *shca, struct ehca_qp *ibqp, | 172 | u64 ehca_define_sqp(struct ehca_shca *shca, struct ehca_qp *ibqp, |
158 | struct ib_qp_init_attr *qp_init_attr); | 173 | struct ib_qp_init_attr *qp_init_attr); |
159 | 174 | ||