Lines Matching defs:shca

279 static inline int init_qp_queue(struct ehca_shca *shca,
291 struct ib_device *ib_dev = &shca->ib_device;
292 struct ipz_adapter_handle ipz_hca_handle = shca->ipz_hca_handle;
460 struct ehca_shca *shca = container_of(pd->device, struct ehca_shca,
472 if (!atomic_add_unless(&shca->num_qps, 1, shca->max_num_qps)) {
474 "QPs reached.", shca->max_num_qps);
481 atomic_dec(&shca->num_qps);
492 atomic_dec(&shca->num_qps);
511 atomic_dec(&shca->num_qps);
522 atomic_dec(&shca->num_qps);
534 atomic_dec(&shca->num_qps);
546 atomic_dec(&shca->num_qps);
560 atomic_dec(&shca->num_qps);
565 if (!EHCA_BMASK_GET(HCA_CAP_UD_LL_QP, shca->hca_cap)) {
568 atomic_dec(&shca->num_qps);
580 atomic_dec(&shca->num_qps);
587 atomic_dec(&shca->num_qps);
594 atomic_dec(&shca->num_qps);
607 atomic_dec(&shca->num_qps);
615 atomic_dec(&shca->num_qps);
685 parms.eq_handle = shca->eq.ipz_eq_handle;
701 if (EHCA_BMASK_GET(HCA_CAP_MINI_QP, shca->hca_cap)) {
712 h_ret = hipz_h_alloc_resource_qp(shca->ipz_hca_handle, &parms, is_user);
765 shca, my_pd, my_qp, &my_qp->ipz_squeue, 0,
792 shca, my_pd, my_qp, &my_qp->ipz_rqueue, 1,
850 shca->sport[init_attr->port_num - 1].ibqp_sqp[qp_type] =
870 h_ret = ehca_define_sqp(shca, my_qp, init_attr);
875 shca->sport[init_attr->port_num - 1].ibqp_sqp[qp_type] =
942 hipz_h_destroy_qp(shca->ipz_hca_handle, my_qp);
951 atomic_dec(&shca->num_qps);
975 struct ehca_shca *shca = container_of(pd->device, struct ehca_shca,
1014 hret = hipz_h_modify_qp(shca->ipz_hca_handle,
1028 hret = hipz_h_modify_qp(shca->ipz_hca_handle,
1042 hret = hipz_h_modify_qp(shca->ipz_hca_handle,
1073 static int prepare_sqe_rts(struct ehca_qp *my_qp, struct ehca_shca *shca,
1084 h_ret = hipz_h_disable_and_get_wqe(shca->ipz_hca_handle,
1088 ehca_err(&shca->ib_device, "hipz_h_disable_and_get_wqe() failed"
1094 ehca_dbg(&shca->ib_device, "qp_num=%x bad_send_wqe_p=%p",
1102 ehca_err(&shca->ib_device, "failed to get wqe offset qp_num=%x"
1123 ehca_dbg(&shca->ib_device, "qp_num=%x flusherr_wqe_cnt=%x",
1163 static int check_for_left_cqes(struct ehca_qp *my_qp, struct ehca_shca *shca)
1174 h_ret = hipz_h_disable_and_get_wqe(shca->ipz_hca_handle,
1178 ehca_err(&shca->ib_device, "disable_and_get_wqe() "
1250 struct ehca_shca *shca =
1267 h_ret = hipz_h_query_qp(shca->ipz_hca_handle,
1387 (shca->hw_level >= 0x22)) {
1410 ret = prepare_sqe_rts(my_qp, shca, &bad_wqe_cnt);
1452 if (attr->port_num < 1 || attr->port_num > shca->num_ports) {
1457 shca->num_ports);
1460 sport = &shca->sport[attr->port_num - 1];
1498 if (ehca_calc_ipd(shca, mqpcb->prim_phys_port,
1575 || attr->alt_port_num > shca->num_ports) {
1580 shca->num_ports);
1599 if (ehca_calc_ipd(shca, mqpcb->alt_phys_port,
1696 h_ret = hipz_h_modify_qp(shca->ipz_hca_handle,
1726 h_ret = hipz_h_modify_qp(shca->ipz_hca_handle,
1744 ret = check_for_left_cqes(my_qp, shca);
1787 struct ehca_shca *shca = container_of(ibqp->device, struct ehca_shca,
1808 struct ehca_sport *sport = &shca->sport[port - 1];
1815 ehca_err(&shca->ib_device,
1828 ehca_dbg(&shca->ib_device,
1896 struct ehca_shca *shca = container_of(qp->device, struct ehca_shca,
1898 struct ipz_adapter_handle adapter_handle = shca->ipz_hca_handle;
2041 struct ehca_shca *shca =
2077 h_ret = hipz_h_modify_qp(shca->ipz_hca_handle, my_qp->ipz_qp_handle,
2097 struct ehca_shca *shca = container_of(srq->device, struct ehca_shca,
2099 struct ipz_adapter_handle adapter_handle = shca->ipz_hca_handle;
2138 struct ehca_shca *shca = container_of(dev, struct ehca_shca, ib_device);
2141 struct ehca_sport *sport = &shca->sport[my_qp->init_attr.port_num - 1];
2187 h_ret = hipz_h_destroy_qp(shca->ipz_hca_handle, my_qp);
2201 shca->sport[port_num - 1].ibqp_sqp[qp_type] = NULL;
2209 shca->ib_device.name, port_num);
2210 event.device = &shca->ib_device;
2213 shca->sport[port_num - 1].port_state = IB_PORT_DOWN;
2228 atomic_dec(&shca->num_qps);