Lines Matching refs:init_attr

919 			    struct ib_qp_init_attr *init_attr,  in create_kernel_qp()  argument
928 if (init_attr->create_flags & ~(IB_QP_CREATE_SIGNATURE_EN | in create_kernel_qp()
935 if (init_attr->qp_type == MLX5_IB_QPT_REG_UMR) in create_kernel_qp()
946 err = calc_sq_size(dev, init_attr, qp); in create_kernel_qp()
979 if (init_attr->create_flags & mlx5_ib_create_qp_sqpn_qp1()) { in create_kernel_qp()
1395 struct ib_qp_init_attr *init_attr, in create_rss_raw_qp_tir() argument
1414 if (init_attr->qp_type != IB_QPT_RAW_PACKET) in create_rss_raw_qp_tir()
1417 if (init_attr->create_flags || init_attr->send_cq) in create_rss_raw_qp_tir()
1479 init_attr->rwq_ind_tbl->ind_tbl_num); in create_rss_raw_qp_tir()
1515 if (!init_attr->rwq_ind_tbl->log_ind_tbl_size) in create_rss_raw_qp_tir()
1604 struct ib_qp_init_attr *init_attr, in create_qp_common() argument
1626 mlx5_st = to_mlx5_st(init_attr->qp_type); in create_qp_common()
1630 if (init_attr->rwq_ind_tbl) { in create_qp_common()
1634 err = create_rss_raw_qp_tir(dev, qp, pd, init_attr, udata); in create_qp_common()
1638 if (init_attr->create_flags & IB_QP_CREATE_BLOCK_MULTICAST_LOOPBACK) { in create_qp_common()
1647 if (init_attr->create_flags & in create_qp_common()
1655 if (init_attr->create_flags & IB_QP_CREATE_CROSS_CHANNEL) in create_qp_common()
1657 if (init_attr->create_flags & IB_QP_CREATE_MANAGED_SEND) in create_qp_common()
1659 if (init_attr->create_flags & IB_QP_CREATE_MANAGED_RECV) in create_qp_common()
1663 if (init_attr->qp_type == IB_QPT_UD && in create_qp_common()
1664 (init_attr->create_flags & IB_QP_CREATE_IPOIB_UD_LSO)) in create_qp_common()
1670 if (init_attr->create_flags & IB_QP_CREATE_SCATTER_FCS) { in create_qp_common()
1671 if (init_attr->qp_type != IB_QPT_RAW_PACKET) { in create_qp_common()
1683 if (init_attr->sq_sig_type == IB_SIGNAL_ALL_WR) in create_qp_common()
1686 if (init_attr->create_flags & IB_QP_CREATE_CVLAN_STRIPPING) { in create_qp_common()
1689 (init_attr->qp_type != IB_QPT_RAW_PACKET)) in create_qp_common()
1708 if (init_attr->qp_type != IB_QPT_RAW_PACKET || in create_qp_common()
1716 if (init_attr->create_flags & IB_QP_CREATE_SOURCE_QPN) { in create_qp_common()
1717 if (init_attr->qp_type != IB_QPT_UD || in create_qp_common()
1726 qp->underlay_qpn = init_attr->source_qpn; in create_qp_common()
1732 base = (init_attr->qp_type == IB_QPT_RAW_PACKET || in create_qp_common()
1737 qp->has_rq = qp_has_rq(init_attr); in create_qp_common()
1738 err = set_rq_size(dev, &init_attr->cap, qp->has_rq, in create_qp_common()
1760 if (init_attr->create_flags & in create_qp_common()
1765 err = create_user_qp(dev, pd, qp, udata, init_attr, &in, in create_qp_common()
1770 err = create_kernel_qp(dev, init_attr, qp, &in, &inlen, in create_qp_common()
1786 if (is_sqp(init_attr->qp_type)) in create_qp_common()
1787 qp->port = init_attr->port_num; in create_qp_common()
1794 if (init_attr->qp_type != MLX5_IB_QPT_REG_UMR) in create_qp_common()
1813 if (qp->scat_cqe && is_connected(init_attr->qp_type)) { in create_qp_common()
1817 rcqe_sz = mlx5_ib_get_cqe_size(dev, init_attr->recv_cq); in create_qp_common()
1818 scqe_sz = mlx5_ib_get_cqe_size(dev, init_attr->send_cq); in create_qp_common()
1825 if (init_attr->sq_sig_type == IB_SIGNAL_ALL_WR) { in create_qp_common()
1838 MLX5_SET(qpc, qpc, rq_type, get_rx_type(qp, init_attr)); in create_qp_common()
1844 if (init_attr->srq && in create_qp_common()
1845 init_attr->srq->srq_type == IB_SRQT_TM) in create_qp_common()
1851 switch (init_attr->qp_type) { in create_qp_common()
1856 MLX5_SET(qpc, qpc, xrcd, to_mxrcd(init_attr->xrcd)->xrcdn); in create_qp_common()
1864 if (init_attr->srq) { in create_qp_common()
1866 MLX5_SET(qpc, qpc, srqn_rmpn_xrqn, to_msrq(init_attr->srq)->msrq.srqn); in create_qp_common()
1873 if (init_attr->send_cq) in create_qp_common()
1874 MLX5_SET(qpc, qpc, cqn_snd, to_mcq(init_attr->send_cq)->mcq.cqn); in create_qp_common()
1876 if (init_attr->recv_cq) in create_qp_common()
1877 MLX5_SET(qpc, qpc, cqn_rcv, to_mcq(init_attr->recv_cq)->mcq.cqn); in create_qp_common()
1886 if (init_attr->qp_type == IB_QPT_UD && in create_qp_common()
1887 (init_attr->create_flags & IB_QP_CREATE_IPOIB_UD_LSO)) { in create_qp_common()
1892 if (init_attr->create_flags & IB_QP_CREATE_PCI_WRITE_END_PADDING) { in create_qp_common()
1897 } else if (init_attr->qp_type != IB_QPT_RAW_PACKET) { in create_qp_common()
1910 if (init_attr->qp_type == IB_QPT_RAW_PACKET || in create_qp_common()
1929 get_cqs(init_attr->qp_type, init_attr->send_cq, init_attr->recv_cq, in create_qp_common()
2212 struct ib_qp_init_attr *init_attr, in set_mlx_qp_type() argument
2231 init_attr->qp_type = MLX5_IB_QPT_DCI; in set_mlx_qp_type()
2234 init_attr->qp_type = MLX5_IB_QPT_DCT; in set_mlx_qp_type()
2258 struct ib_qp_init_attr *init_attr = verbs_init_attr; in mlx5_ib_create_qp() local
2263 if (init_attr->qp_type == IB_QPT_RAW_PACKET) { in mlx5_ib_create_qp()
2274 if (init_attr->qp_type != IB_QPT_XRC_TGT && in mlx5_ib_create_qp()
2275 init_attr->qp_type != MLX5_IB_QPT_REG_UMR) { in mlx5_ib_create_qp()
2277 ib_qp_type_str(init_attr->qp_type)); in mlx5_ib_create_qp()
2280 dev = to_mdev(to_mxrcd(init_attr->xrcd)->ibxrcd.device); in mlx5_ib_create_qp()
2283 if (init_attr->qp_type == IB_QPT_DRIVER) { in mlx5_ib_create_qp()
2286 init_attr = &mlx_init_attr; in mlx5_ib_create_qp()
2287 memcpy(init_attr, verbs_init_attr, sizeof(*verbs_init_attr)); in mlx5_ib_create_qp()
2288 err = set_mlx_qp_type(dev, init_attr, &ucmd, udata); in mlx5_ib_create_qp()
2292 if (init_attr->qp_type == MLX5_IB_QPT_DCI) { in mlx5_ib_create_qp()
2293 if (init_attr->cap.max_recv_wr || in mlx5_ib_create_qp()
2294 init_attr->cap.max_recv_sge) { in mlx5_ib_create_qp()
2299 return mlx5_ib_create_dct(pd, init_attr, &ucmd); in mlx5_ib_create_qp()
2303 switch (init_attr->qp_type) { in mlx5_ib_create_qp()
2310 init_attr->recv_cq = NULL; in mlx5_ib_create_qp()
2311 if (init_attr->qp_type == IB_QPT_XRC_TGT) { in mlx5_ib_create_qp()
2312 xrcdn = to_mxrcd(init_attr->xrcd)->xrcdn; in mlx5_ib_create_qp()
2313 init_attr->send_cq = NULL; in mlx5_ib_create_qp()
2329 err = create_qp_common(dev, pd, init_attr, udata, qp); in mlx5_ib_create_qp()
2336 if (is_qp0(init_attr->qp_type)) in mlx5_ib_create_qp()
2338 else if (is_qp1(init_attr->qp_type)) in mlx5_ib_create_qp()
2345 init_attr->recv_cq ? to_mcq(init_attr->recv_cq)->mcq.cqn : -1, in mlx5_ib_create_qp()
2346 init_attr->send_cq ? to_mcq(init_attr->send_cq)->mcq.cqn : -1); in mlx5_ib_create_qp()
2353 return mlx5_ib_gsi_create_qp(pd, init_attr); in mlx5_ib_create_qp()
2360 init_attr->qp_type); in mlx5_ib_create_qp()
2366 qp->qp_sub_type = init_attr->qp_type; in mlx5_ib_create_qp()
5253 struct ib_wq_init_attr *init_attr) in create_rq() argument
5275 MLX5_SET(rqc, rqc, cqn, to_mcq(init_attr->cq)->mcq.cqn); in create_rq()
5282 if (init_attr->create_flags & IB_WQ_FLAGS_PCI_WRITE_END_PADDING) { in create_rq()
5307 if (init_attr->create_flags & IB_WQ_FLAGS_CVLAN_STRIPPING) { in create_rq()
5316 if (init_attr->create_flags & IB_WQ_FLAGS_SCATTER_FCS) { in create_rq()
5324 if (init_attr->create_flags & IB_WQ_FLAGS_DELAY_DROP) { in create_rq()
5336 if (!err && init_attr->create_flags & IB_WQ_FLAGS_DELAY_DROP) { in create_rq()
5374 struct ib_wq_init_attr *init_attr, in prepare_user_rq() argument
5437 err = set_user_rq_size(dev, init_attr, &ucmd, rwq); in prepare_user_rq()
5455 struct ib_wq_init_attr *init_attr, in mlx5_ib_create_wq() argument
5472 switch (init_attr->wq_type) { in mlx5_ib_create_wq()
5477 err = prepare_user_rq(pd, init_attr, udata, rwq); in mlx5_ib_create_wq()
5480 err = create_rq(rwq, pd, init_attr); in mlx5_ib_create_wq()
5486 init_attr->wq_type); in mlx5_ib_create_wq()
5501 rwq->ibwq.event_handler = init_attr->event_handler; in mlx5_ib_create_wq()
5526 struct ib_rwq_ind_table_init_attr *init_attr, in mlx5_ib_create_rwq_ind_table() argument
5531 int sz = 1 << init_attr->log_ind_tbl_size; in mlx5_ib_create_rwq_ind_table()
5545 if (init_attr->log_ind_tbl_size > in mlx5_ib_create_rwq_ind_table()
5548 init_attr->log_ind_tbl_size, in mlx5_ib_create_rwq_ind_table()
5574 MLX5_SET(rqtc, rqtc, rq_num[i], init_attr->ind_tbl[i]->wq_num); in mlx5_ib_create_rwq_ind_table()