/linux/drivers/net/ethernet/ibm/ehea/ |
H A D | ehea_phyp.c | 199 struct ehea_qp_init_attr *init_attr, const u32 pd, in ehea_h_alloc_resource_qp() argument 206 EHEA_BMASK_SET(H_ALL_RES_QP_EQPO, init_attr->low_lat_rq1 ? 1 : 0) in ehea_h_alloc_resource_qp() 210 | EHEA_BMASK_SET(H_ALL_RES_QP_LL_QP, init_attr->low_lat_rq1) in ehea_h_alloc_resource_qp() 213 | EHEA_BMASK_SET(H_ALL_RES_QP_SIGT, init_attr->signalingtype) in ehea_h_alloc_resource_qp() 217 | EHEA_BMASK_SET(H_ALL_RES_QP_TOKEN, init_attr->qp_token); in ehea_h_alloc_resource_qp() 221 get_order_of_qentries(init_attr->max_nr_send_wqes)) in ehea_h_alloc_resource_qp() 223 get_order_of_qentries(init_attr->max_nr_rwqes_rq1)) in ehea_h_alloc_resource_qp() 225 get_order_of_qentries(init_attr->max_nr_rwqes_rq2)) in ehea_h_alloc_resource_qp() 227 get_order_of_qentries(init_attr->max_nr_rwqes_rq3)) in ehea_h_alloc_resource_qp() 228 | EHEA_BMASK_SET(H_ALL_RES_QP_MAX_SSGE, init_attr->wqe_size_enc_sq) in ehea_h_alloc_resource_qp() [all …]
|
H A D | ehea_qmr.c | 398 u32 pd, struct ehea_qp_init_attr *init_attr) in ehea_create_qp() argument 413 hret = ehea_h_alloc_resource_qp(adapter->handle, init_attr, pd, in ehea_create_qp() 420 wqe_size_in_bytes_sq = map_wqe_size(init_attr->act_wqe_size_enc_sq); in ehea_create_qp() 421 wqe_size_in_bytes_rq1 = map_wqe_size(init_attr->act_wqe_size_enc_rq1); in ehea_create_qp() 422 wqe_size_in_bytes_rq2 = map_wqe_size(init_attr->act_wqe_size_enc_rq2); in ehea_create_qp() 423 wqe_size_in_bytes_rq3 = map_wqe_size(init_attr->act_wqe_size_enc_rq3); in ehea_create_qp() 425 ret = ehea_qp_alloc_register(qp, &qp->hw_squeue, init_attr->nr_sq_pages, in ehea_create_qp() 427 init_attr->act_wqe_size_enc_sq, adapter, in ehea_create_qp() 435 init_attr->nr_rq1_pages, in ehea_create_qp() 437 init_attr->act_wqe_size_enc_rq1, in ehea_create_qp() [all …]
|
H A D | ehea_main.c | 643 pr->qp->init_attr.qp_nr); in ehea_treat_poll_error() 1254 struct ehea_qp_init_attr *init_attr = &pr->qp->init_attr; in ehea_fill_port_res() local 1258 ret = ehea_refill_rq2(pr, init_attr->act_nr_rwqes_rq2 - 1); in ehea_fill_port_res() 1260 ret |= ehea_refill_rq3(pr, init_attr->act_nr_rwqes_rq3 - 1); in ehea_fill_port_res() 1368 port->port_res[i].qp->init_attr.qp_nr; in ehea_configure_port() 1371 port->port_res[0].qp->init_attr.qp_nr; in ehea_configure_port() 1445 struct ehea_qp_init_attr *init_attr = NULL; in ehea_init_port_res() local 1490 init_attr = kzalloc(sizeof(*init_attr), GFP_KERNEL); in ehea_init_port_res() 1491 if (!init_attr) { in ehea_init_port_res() 1497 init_attr->low_lat_rq1 = 1; in ehea_init_port_res() [all …]
|
/linux/drivers/infiniband/hw/vmw_pvrdma/ |
H A D | pvrdma_qp.c | 191 int pvrdma_create_qp(struct ib_qp *ibqp, struct ib_qp_init_attr *init_attr, in pvrdma_create_qp() argument 205 bool is_srq = !!init_attr->srq; in pvrdma_create_qp() 207 if (init_attr->create_flags) { in pvrdma_create_qp() 210 init_attr->create_flags); in pvrdma_create_qp() 214 if (init_attr->qp_type != IB_QPT_RC && in pvrdma_create_qp() 215 init_attr->qp_type != IB_QPT_UD && in pvrdma_create_qp() 216 init_attr->qp_type != IB_QPT_GSI) { in pvrdma_create_qp() 218 init_attr->qp_type); in pvrdma_create_qp() 231 switch (init_attr->qp_type) { in pvrdma_create_qp() 233 if (init_attr->port_num == 0 || in pvrdma_create_qp() [all …]
|
H A D | pvrdma_srq.c | 99 int pvrdma_create_srq(struct ib_srq *ibsrq, struct ib_srq_init_attr *init_attr, in pvrdma_create_srq() argument 120 if (init_attr->srq_type != IB_SRQT_BASIC) { in pvrdma_create_srq() 123 init_attr->srq_type); in pvrdma_create_srq() 127 if (init_attr->attr.max_wr > dev->dsr->caps.max_srq_wr || in pvrdma_create_srq() 128 init_attr->attr.max_sge > dev->dsr->caps.max_srq_sge) { in pvrdma_create_srq() 175 cmd->srq_type = init_attr->srq_type; in pvrdma_create_srq() 178 cmd->attrs.max_wr = init_attr->attr.max_wr; in pvrdma_create_srq() 179 cmd->attrs.max_sge = init_attr->attr.max_sge; in pvrdma_create_srq() 180 cmd->attrs.srq_limit = init_attr->attr.srq_limit; in pvrdma_create_srq()
|
H A D | pvrdma_verbs.h | 382 int pvrdma_create_ah(struct ib_ah *ah, struct rdma_ah_init_attr *init_attr, 386 int pvrdma_create_srq(struct ib_srq *srq, struct ib_srq_init_attr *init_attr, 393 int pvrdma_create_qp(struct ib_qp *qp, struct ib_qp_init_attr *init_attr,
|
/linux/drivers/infiniband/hw/mlx5/ |
H A D | srq.c | 192 struct ib_srq_init_attr *init_attr, in mlx5_ib_create_srq() argument 205 if (init_attr->srq_type != IB_SRQT_BASIC && in mlx5_ib_create_srq() 206 init_attr->srq_type != IB_SRQT_XRC && in mlx5_ib_create_srq() 207 init_attr->srq_type != IB_SRQT_TM) in mlx5_ib_create_srq() 211 if (init_attr->attr.max_wr >= max_srq_wqes || in mlx5_ib_create_srq() 212 init_attr->attr.max_sge > max_sge_sz) { in mlx5_ib_create_srq() 214 init_attr->attr.max_wr, max_srq_wqes, in mlx5_ib_create_srq() 215 init_attr->attr.max_sge, max_sge_sz); in mlx5_ib_create_srq() 225 srq->msrq.max = roundup_pow_of_two(init_attr->attr.max_wr + 1); in mlx5_ib_create_srq() 226 srq->msrq.max_gs = init_attr->attr.max_sge; in mlx5_ib_create_srq() [all …]
|
H A D | ah.c | 54 struct rdma_ah_init_attr *init_attr) in create_ib_ah() argument 56 struct rdma_ah_attr *ah_attr = init_attr->ah_attr; in create_ib_ah() 73 if (init_attr->xmit_slave) in create_ib_ah() 76 init_attr->xmit_slave); in create_ib_ah() 93 int mlx5_ib_create_ah(struct ib_ah *ibah, struct rdma_ah_init_attr *init_attr, in mlx5_ib_create_ah() argument 97 struct rdma_ah_attr *ah_attr = init_attr->ah_attr; in mlx5_ib_create_ah() 123 create_ib_ah(dev, ah, init_attr); in mlx5_ib_create_ah()
|
H A D | umr.c | 137 struct ib_qp_init_attr init_attr = {}; in mlx5r_umr_resource_init() local 162 init_attr.send_cq = cq; in mlx5r_umr_resource_init() 163 init_attr.recv_cq = cq; in mlx5r_umr_resource_init() 164 init_attr.sq_sig_type = IB_SIGNAL_ALL_WR; in mlx5r_umr_resource_init() 165 init_attr.cap.max_send_wr = MAX_UMR_WR; in mlx5r_umr_resource_init() 166 init_attr.cap.max_send_sge = 1; in mlx5r_umr_resource_init() 167 init_attr.qp_type = MLX5_IB_QPT_REG_UMR; in mlx5r_umr_resource_init() 168 init_attr.port_num = 1; in mlx5r_umr_resource_init() 169 qp = ib_create_qp(dev->umrc.pd, &init_attr); in mlx5r_umr_resource_init()
|
/linux/drivers/infiniband/ulp/ipoib/ |
H A D | ipoib_verbs.c | 146 struct ib_qp_init_attr init_attr = { in ipoib_transport_dev_init() local 197 init_attr.send_cq = priv->send_cq; in ipoib_transport_dev_init() 198 init_attr.recv_cq = priv->recv_cq; in ipoib_transport_dev_init() 201 init_attr.create_flags |= IB_QP_CREATE_IPOIB_UD_LSO; in ipoib_transport_dev_init() 204 init_attr.create_flags |= IB_QP_CREATE_BLOCK_MULTICAST_LOOPBACK; in ipoib_transport_dev_init() 207 init_attr.create_flags |= IB_QP_CREATE_NETIF_QP; in ipoib_transport_dev_init() 210 init_attr.create_flags |= IB_QP_CREATE_NETDEV_USE; in ipoib_transport_dev_init() 212 priv->qp = ib_create_qp(priv->pd, &init_attr); in ipoib_transport_dev_init() 236 if (init_attr.cap.max_send_sge > 1) in ipoib_transport_dev_init() 239 priv->max_send_sge = init_attr.cap.max_send_sge; in ipoib_transport_dev_init()
|
/linux/drivers/infiniband/hw/mlx4/ |
H A D | srq.c | 73 struct ib_srq_init_attr *init_attr, in mlx4_ib_create_srq() argument 89 if (init_attr->srq_type != IB_SRQT_BASIC && in mlx4_ib_create_srq() 90 init_attr->srq_type != IB_SRQT_XRC) in mlx4_ib_create_srq() 94 if (init_attr->attr.max_wr >= dev->dev->caps.max_srq_wqes || in mlx4_ib_create_srq() 95 init_attr->attr.max_sge > dev->dev->caps.max_srq_sge) in mlx4_ib_create_srq() 100 srq->msrq.max = roundup_pow_of_two(init_attr->attr.max_wr + 1); in mlx4_ib_create_srq() 101 srq->msrq.max_gs = init_attr->attr.max_sge; in mlx4_ib_create_srq() 180 cqn = ib_srq_has_cq(init_attr->srq_type) ? in mlx4_ib_create_srq() 181 to_mcq(init_attr->ext.cq)->mcq.cqn : 0; in mlx4_ib_create_srq() 182 xrcdn = (init_attr->srq_type == IB_SRQT_XRC) ? in mlx4_ib_create_srq() [all …]
|
H A D | qp.c | 553 struct ib_qp_init_attr *init_attr, in set_qp_rss() argument 556 rss_ctx->base_qpn_tbl_sz = init_attr->rwq_ind_tbl->ind_tbl[0]->wq_num | in set_qp_rss() 557 (init_attr->rwq_ind_tbl->log_ind_tbl_size << 24); in set_qp_rss() 655 struct ib_qp_init_attr *init_attr, in create_qp_rss() argument 684 (struct ib_qp *)init_attr->rwq_ind_tbl->ind_tbl[0]))->mtt; in create_qp_rss() 692 err = set_qp_rss(dev, qp->rss_ctx, init_attr, ucmd); in create_qp_rss() 711 struct ib_qp_init_attr *init_attr, in _mlx4_ib_create_qp_rss() argument 751 if (init_attr->qp_type != IB_QPT_RAW_PACKET) { in _mlx4_ib_create_qp_rss() 753 init_attr->qp_type); in _mlx4_ib_create_qp_rss() 757 if (init_attr->create_flags) { in _mlx4_ib_create_qp_rss() [all …]
|
H A D | ah.c | 144 int mlx4_ib_create_ah(struct ib_ah *ib_ah, struct rdma_ah_init_attr *init_attr, in mlx4_ib_create_ah() argument 147 struct rdma_ah_attr *ah_attr = init_attr->ah_attr; in mlx4_ib_create_ah() 171 struct rdma_ah_init_attr init_attr = {}; in mlx4_ib_create_ah_slave() local 177 init_attr.ah_attr = &slave_attr; in mlx4_ib_create_ah_slave() 178 ret = mlx4_ib_create_ah(ah, &init_attr, NULL); in mlx4_ib_create_ah_slave()
|
H A D | mlx4_ib.h | 659 struct ib_qp_init_attr init_attr; member 777 int mlx4_ib_create_ah(struct ib_ah *ah, struct rdma_ah_init_attr *init_attr, 787 int mlx4_ib_create_srq(struct ib_srq *srq, struct ib_srq_init_attr *init_attr, 797 int mlx4_ib_create_qp(struct ib_qp *qp, struct ib_qp_init_attr *init_attr, 925 struct ib_wq_init_attr *init_attr, 932 struct ib_rwq_ind_table_init_attr *init_attr,
|
/linux/drivers/infiniband/ulp/iser/ |
H A D | iser_verbs.c | 233 struct ib_qp_init_attr init_attr; in iser_create_ib_conn_res() local 258 memset(&init_attr, 0, sizeof(init_attr)); in iser_create_ib_conn_res() 260 init_attr.event_handler = iser_qp_event_callback; in iser_create_ib_conn_res() 261 init_attr.qp_context = (void *)ib_conn; in iser_create_ib_conn_res() 262 init_attr.send_cq = ib_conn->cq; in iser_create_ib_conn_res() 263 init_attr.recv_cq = ib_conn->cq; in iser_create_ib_conn_res() 265 init_attr.cap.max_recv_wr = ISER_QP_MAX_RECV_DTOS + 1; in iser_create_ib_conn_res() 266 init_attr.cap.max_send_sge = 2; in iser_create_ib_conn_res() 267 init_attr.cap.max_recv_sge = 1; in iser_create_ib_conn_res() 268 init_attr.sq_sig_type = IB_SIGNAL_REQ_WR; in iser_create_ib_conn_res() [all …]
|
/linux/drivers/infiniband/hw/mthca/ |
H A D | mthca_provider.c | 375 struct rdma_ah_init_attr *init_attr, in mthca_ah_create() argument 382 init_attr->ah_attr, ah); in mthca_ah_create() 392 struct ib_srq_init_attr *init_attr, in mthca_create_srq() argument 401 if (init_attr->srq_type != IB_SRQT_BASIC) in mthca_create_srq() 420 &init_attr->attr, srq, udata); in mthca_create_srq() 455 struct ib_qp_init_attr *init_attr, in mthca_create_qp() argument 465 if (init_attr->create_flags) in mthca_create_qp() 468 switch (init_attr->qp_type) { in mthca_create_qp() 501 to_mcq(init_attr->send_cq), in mthca_create_qp() 502 to_mcq(init_attr->recv_cq), in mthca_create_qp() [all …]
|
/linux/drivers/infiniband/sw/rdmavt/ |
H A D | ah.c | 58 int rvt_create_ah(struct ib_ah *ibah, struct rdma_ah_init_attr *init_attr, in rvt_create_ah() argument 65 if (rvt_check_ah(ibah->device, init_attr->ah_attr)) in rvt_create_ah() 77 rdma_copy_ah_attr(&ah->attr, init_attr->ah_attr); in rvt_create_ah() 81 init_attr->ah_attr, ah); in rvt_create_ah()
|
H A D | qp.c | 1029 int rvt_create_qp(struct ib_qp *ibqp, struct ib_qp_init_attr *init_attr, in rvt_create_qp() argument 1045 if (init_attr->create_flags & ~IB_QP_CREATE_NETDEV_USE) in rvt_create_qp() 1048 if (init_attr->cap.max_send_sge > rdi->dparms.props.max_send_sge || in rvt_create_qp() 1049 init_attr->cap.max_send_wr > rdi->dparms.props.max_qp_wr) in rvt_create_qp() 1053 if (!init_attr->srq) { in rvt_create_qp() 1054 if (init_attr->cap.max_recv_sge > in rvt_create_qp() 1056 init_attr->cap.max_recv_wr > rdi->dparms.props.max_qp_wr) in rvt_create_qp() 1059 if (init_attr->cap.max_send_sge + in rvt_create_qp() 1060 init_attr->cap.max_send_wr + in rvt_create_qp() 1061 init_attr->cap.max_recv_sge + in rvt_create_qp() [all …]
|
H A D | qp.h | 13 int rvt_create_qp(struct ib_qp *ibqp, struct ib_qp_init_attr *init_attr, 19 int attr_mask, struct ib_qp_init_attr *init_attr);
|
/linux/drivers/infiniband/ulp/rtrs/ |
H A D | rtrs.c | 258 struct ib_qp_init_attr init_attr = {}; in create_qp() local 262 init_attr.cap.max_send_wr = max_send_wr; in create_qp() 263 init_attr.cap.max_recv_wr = max_recv_wr; in create_qp() 264 init_attr.cap.max_recv_sge = 1; in create_qp() 265 init_attr.event_handler = qp_event_handler; in create_qp() 266 init_attr.qp_context = con; in create_qp() 267 init_attr.cap.max_send_sge = max_sge; in create_qp() 269 init_attr.qp_type = IB_QPT_RC; in create_qp() 270 init_attr.send_cq = con->cq; in create_qp() 271 init_attr.recv_cq = con->cq; in create_qp() [all …]
|
/linux/drivers/infiniband/hw/mana/ |
H A D | wq.c | 9 struct ib_wq_init_attr *init_attr, in mana_ib_create_wq() argument 41 wq->wqe = init_attr->max_wr; in mana_ib_create_wq() 75 struct ib_rwq_ind_table_init_attr *init_attr, in mana_ib_create_rwq_ind_table() argument
|
/linux/drivers/infiniband/hw/bnxt_re/ |
H A D | ib_verbs.c | 803 int bnxt_re_create_ah(struct ib_ah *ib_ah, struct rdma_ah_init_attr *init_attr, in bnxt_re_create_ah() argument 808 struct rdma_ah_attr *ah_attr = init_attr->ah_attr; in bnxt_re_create_ah() 847 !(init_attr->flags & in bnxt_re_create_ah() 1054 struct ib_qp_init_attr *init_attr) in bnxt_re_setup_swqe_size() argument 1068 ilsize = ALIGN(init_attr->cap.max_inline_data, align); in bnxt_re_setup_swqe_size() 1082 if (init_attr->cap.max_inline_data) { in bnxt_re_setup_swqe_size() 1085 init_attr->cap.max_inline_data = qplqp->max_inline_data; in bnxt_re_setup_swqe_size() 1273 struct ib_qp_init_attr *init_attr, in bnxt_re_init_rq_attr() argument 1287 if (init_attr->srq) { in bnxt_re_init_rq_attr() 1290 srq = container_of(init_attr->srq, struct bnxt_re_srq, ib_srq); in bnxt_re_init_rq_attr() [all …]
|
/linux/drivers/infiniband/hw/irdma/ |
H A D | verbs.c | 586 struct ib_qp_init_attr *init_attr) in irdma_setup_umode_qp() argument 625 iwqp->max_send_wr = init_attr->cap.max_send_wr; in irdma_setup_umode_qp() 626 iwqp->max_recv_wr = init_attr->cap.max_recv_wr; in irdma_setup_umode_qp() 627 ukinfo->sq_size = init_attr->cap.max_send_wr; in irdma_setup_umode_qp() 628 ukinfo->rq_size = init_attr->cap.max_recv_wr; in irdma_setup_umode_qp() 665 struct ib_qp_init_attr *init_attr) in irdma_setup_kmode_qp() argument 725 init_attr->cap.max_send_wr = iwqp->max_send_wr; in irdma_setup_kmode_qp() 726 init_attr->cap.max_recv_wr = iwqp->max_recv_wr; in irdma_setup_kmode_qp() 830 static int irdma_validate_qp_attrs(struct ib_qp_init_attr *init_attr, in irdma_validate_qp_attrs() argument 836 if (init_attr->create_flags) in irdma_validate_qp_attrs() [all …]
|
/linux/drivers/infiniband/hw/usnic/ |
H A D | usnic_ib_verbs.c | 459 int usnic_ib_create_qp(struct ib_qp *ibqp, struct ib_qp_init_attr *init_attr, in usnic_ib_create_qp() argument 476 if (init_attr->create_flags) in usnic_ib_create_qp() 493 if (init_attr->qp_type != IB_QPT_UD) { in usnic_ib_create_qp() 495 dev_name(&us_ibdev->ib_dev.dev), init_attr->qp_type); in usnic_ib_create_qp() 501 cq_cnt = (init_attr->send_cq == init_attr->recv_cq) ? 1 : 2; in usnic_ib_create_qp()
|
/linux/drivers/infiniband/hw/hns/ |
H A D | hns_roce_ah.c | 54 int hns_roce_create_ah(struct ib_ah *ibah, struct rdma_ah_init_attr *init_attr, in hns_roce_create_ah() argument 57 struct rdma_ah_attr *ah_attr = init_attr->ah_attr; in hns_roce_create_ah()
|