Lines Matching refs:iwdev
48 struct irdma_device *iwdev = to_iwdev(ibdev); in irdma_query_device() local
49 struct irdma_pci_f *rf = iwdev->rf; in irdma_query_device()
50 struct pci_dev *pcidev = iwdev->rf->pcidev; in irdma_query_device()
58 if_getlladdr(iwdev->netdev)); in irdma_query_device()
105 pfn = ((uintptr_t)ucontext->iwdev->rf->sc_dev.hw_regs[IRDMA_DB_ADDR_OFFSET] + in irdma_mmap_legacy()
106 pci_resource_start(ucontext->iwdev->rf->pcidev, 0)) >> PAGE_SHIFT; in irdma_mmap_legacy()
166 irdma_debug(&ucontext->iwdev->rf->sc_dev, IRDMA_DEBUG_VERBS, in irdma_mmap()
173 irdma_debug(&ucontext->iwdev->rf->sc_dev, IRDMA_DEBUG_VERBS, in irdma_mmap()
178 pci_resource_start(ucontext->iwdev->rf->pcidev, 0)) >> PAGE_SHIFT; in irdma_mmap()
196 irdma_debug(&ucontext->iwdev->rf->sc_dev, IRDMA_DEBUG_VERBS, in irdma_mmap()
213 struct irdma_device *iwdev = iwqp->iwdev; in irdma_alloc_push_page() local
217 cqp_request = irdma_alloc_and_get_cqp_request(&iwdev->rf->cqp, true); in irdma_alloc_push_page()
229 cqp_info->in.u.manage_push_page.cqp = &iwdev->rf->cqp.sc_cqp; in irdma_alloc_push_page()
233 status = irdma_handle_cqp_op(iwdev->rf, cqp_request); in irdma_alloc_push_page()
235 iwdev->rf->sc_dev.hw_attrs.max_hw_device_pages) { in irdma_alloc_push_page()
240 irdma_put_cqp_request(&iwdev->rf->cqp, cqp_request); in irdma_alloc_push_page()
293 static u64 irdma_compute_push_wqe_offset(struct irdma_device *iwdev, u32 page_idx){ in irdma_compute_push_wqe_offset() argument
294 u64 bar_off = (uintptr_t)iwdev->rf->sc_dev.hw_regs[IRDMA_DB_ADDR_OFFSET]; in irdma_compute_push_wqe_offset()
296 if (iwdev->rf->sc_dev.hw_attrs.uk_attrs.hw_rev == IRDMA_GEN_2) { in irdma_compute_push_wqe_offset()
328 struct irdma_device *iwdev = ucontext->iwdev; in irdma_setup_push_mmap_entries() local
331 WARN_ON_ONCE(iwdev->rf->sc_dev.hw_attrs.uk_attrs.hw_rev < IRDMA_GEN_2); in irdma_setup_push_mmap_entries()
333 bar_off = irdma_compute_push_wqe_offset(iwdev, iwqp->sc_qp.push_idx); in irdma_setup_push_mmap_entries()
361 irdma_setup_virt_qp(struct irdma_device *iwdev, in irdma_setup_virt_qp() argument
390 struct irdma_device *iwdev, in irdma_setup_umode_qp() argument
404 irdma_debug(&iwdev->rf->sc_dev, IRDMA_DEBUG_VERBS, "ib_copy_from_data fail\n"); in irdma_setup_umode_qp()
419 irdma_debug(&iwdev->rf->sc_dev, IRDMA_DEBUG_VERBS, "no pbl info\n"); in irdma_setup_umode_qp()
453 iwdev->rf->sc_dev.hw_attrs.uk_attrs.feature_flags & IRDMA_FEATURE_RTS_AE) in irdma_setup_umode_qp()
455 irdma_setup_virt_qp(iwdev, iwqp, info); in irdma_setup_umode_qp()
468 irdma_setup_kmode_qp(struct irdma_device *iwdev, in irdma_setup_kmode_qp() argument
518 mem->va = irdma_allocate_dma_mem(&iwdev->rf->hw, mem, mem->size, in irdma_setup_kmode_qp()
548 struct irdma_pci_f *rf = iwqp->iwdev->rf; in irdma_cqp_create_qp_cmd()
579 struct irdma_device *iwdev = iwqp->iwdev; in irdma_roce_fill_and_set_qpctx_info() local
580 struct irdma_sc_dev *dev = &iwdev->rf->sc_dev; in irdma_roce_fill_and_set_qpctx_info()
585 udp_info->snd_mss = ib_mtu_enum_to_int(iboe_get_mtu(iwdev->vsi.mtu)); in irdma_roce_fill_and_set_qpctx_info()
586 udp_info->cwnd = iwdev->roce_cwnd; in irdma_roce_fill_and_set_qpctx_info()
592 ether_addr_copy(roce_info->mac_addr, if_getlladdr(iwdev->netdev)); in irdma_roce_fill_and_set_qpctx_info()
597 roce_info->rtomin = iwdev->roce_rtomin; in irdma_roce_fill_and_set_qpctx_info()
599 roce_info->ack_credits = iwdev->roce_ackcreds; in irdma_roce_fill_and_set_qpctx_info()
619 struct irdma_device *iwdev = iwqp->iwdev; in irdma_iw_fill_and_set_qpctx_info() local
620 struct irdma_sc_dev *dev = &iwdev->rf->sc_dev; in irdma_iw_fill_and_set_qpctx_info()
624 ether_addr_copy(iwarp_info->mac_addr, if_getlladdr(iwdev->netdev)); in irdma_iw_fill_and_set_qpctx_info()
647 struct irdma_device *iwdev) in irdma_validate_qp_attrs() argument
649 struct irdma_sc_dev *dev = &iwdev->rf->sc_dev; in irdma_validate_qp_attrs()
662 if (rdma_protocol_roce(&iwdev->ibdev, 1)) { in irdma_validate_qp_attrs()
684 if (mod_delayed_work(iwqp->iwdev->cleanup_wq, &iwqp->dwork_flush, in irdma_sched_qp_flush_work()
705 mod_delayed_work(iwqp->iwdev->cleanup_wq, &iwqp->dwork_flush, in irdma_user_flush_worker()
794 if (!wait_event_timeout(iwqp->iwdev->suspend_wq, in irdma_wait_for_suspend()
798 irdma_dev_warn(&iwqp->iwdev->ibdev, in irdma_wait_for_suspend()
822 struct irdma_device *iwdev = iwqp->iwdev; in irdma_modify_qp_roce() local
823 struct irdma_sc_dev *dev = &iwdev->rf->sc_dev; in irdma_modify_qp_roce()
912 if (vlan_id >= VLAN_N_VID && iwdev->dcb_vlan_mode) in irdma_modify_qp_roce()
955 irdma_add_arp(iwdev->rf, local_ip, in irdma_modify_qp_roce()
961 irdma_dev_err(&iwdev->ibdev, in irdma_modify_qp_roce()
974 irdma_dev_err(&iwdev->ibdev, in irdma_modify_qp_roce()
995 irdma_debug(&iwdev->rf->sc_dev, IRDMA_DEBUG_VERBS, in irdma_modify_qp_roce()
1004 irdma_dev_warn(&iwdev->ibdev, "modify_qp invalid for qp_id=%d, old_state=0x%x, new_state=0x%x\n", in irdma_modify_qp_roce()
1047 iwdev->rf->check_fc(&iwdev->vsi, &iwqp->sc_qp); in irdma_modify_qp_roce()
1048 udp_info->cwnd = iwdev->roce_cwnd; in irdma_modify_qp_roce()
1049 roce_info->ack_credits = iwdev->roce_ackcreds; in irdma_modify_qp_roce()
1050 if (iwdev->push_mode && udata && in irdma_modify_qp_roce()
1107 if (irdma_hw_modify_qp(iwdev, iwqp, &info, true)) in irdma_modify_qp_roce()
1144 uresp.rd_fence_rate = iwdev->rd_fence_rate; in irdma_modify_qp_roce()
1149 irdma_debug(&iwdev->rf->sc_dev, in irdma_modify_qp_roce()
1178 struct irdma_device *iwdev = iwqp->iwdev; in irdma_modify_qp() local
1179 struct irdma_sc_dev *dev = &iwdev->rf->sc_dev; in irdma_modify_qp()
1204 irdma_debug(&iwdev->rf->sc_dev, IRDMA_DEBUG_VERBS, in irdma_modify_qp()
1225 if (iwdev->push_mode && udata && in irdma_modify_qp()
1301 iwdev->iw_status && in irdma_modify_qp()
1337 if (irdma_hw_modify_qp(iwdev, iwqp, &info, true)) in irdma_modify_qp()
1362 spin_lock_irqsave(&iwdev->cm_core.ht_lock, flags); in irdma_modify_qp()
1366 spin_unlock_irqrestore(&iwdev->cm_core.ht_lock, flags); in irdma_modify_qp()
1375 spin_unlock_irqrestore(&iwdev->cm_core.ht_lock, flags); in irdma_modify_qp()
1391 uresp.rd_fence_rate = iwdev->rd_fence_rate; in irdma_modify_qp()
1397 irdma_debug(&iwdev->rf->sc_dev, IRDMA_DEBUG_VERBS, in irdma_modify_qp()
1449 struct irdma_device *iwdev, in irdma_process_resize_list() argument
1462 queue_work(iwdev->cleanup_wq, &cq_buf->work); in irdma_process_resize_list()
1489 struct irdma_device *iwdev; in irdma_resize_cq() local
1495 iwdev = to_iwdev(ibcq->device); in irdma_resize_cq()
1496 rf = iwdev->rf; in irdma_resize_cq()
1642 irdma_free_stag(struct irdma_device *iwdev, u32 stag) in irdma_free_stag() argument
1646 stag_idx = (stag & iwdev->rf->mr_stagmask) >> IRDMA_CQPSQ_STAG_IDX_S; in irdma_free_stag()
1647 irdma_free_rsrc(iwdev->rf, iwdev->rf->allocated_mrs, stag_idx); in irdma_free_stag()
1655 irdma_create_stag(struct irdma_device *iwdev) in irdma_create_stag() argument
1668 driver_key = random & ~iwdev->rf->mr_stagmask; in irdma_create_stag()
1669 next_stag_index = (random & iwdev->rf->mr_stagmask) >> 8; in irdma_create_stag()
1670 next_stag_index %= iwdev->rf->max_mr; in irdma_create_stag()
1672 ret = irdma_alloc_rsrc(iwdev->rf, iwdev->rf->allocated_mrs, in irdma_create_stag()
1673 iwdev->rf->max_mr, &stag_index, in irdma_create_stag()
1789 irdma_handle_q_mem(struct irdma_device *iwdev, in irdma_handle_q_mem() argument
1804 err = irdma_setup_pbles(iwdev->rf, iwmr, lvl); in irdma_handle_q_mem()
1851 irdma_debug(&iwdev->rf->sc_dev, IRDMA_DEBUG_VERBS, "MR type error\n"); in irdma_handle_q_mem()
1856 irdma_free_pble(iwdev->rf->pble_rsrc, palloc); in irdma_handle_q_mem()
1869 irdma_hw_alloc_mw(struct irdma_device *iwdev, struct irdma_mr *iwmr) in irdma_hw_alloc_mw() argument
1877 cqp_request = irdma_alloc_and_get_cqp_request(&iwdev->rf->cqp, true); in irdma_hw_alloc_mw()
1892 cqp_info->in.u.mw_alloc.dev = &iwdev->rf->sc_dev; in irdma_hw_alloc_mw()
1895 status = irdma_handle_cqp_op(iwdev->rf, cqp_request); in irdma_hw_alloc_mw()
1896 irdma_put_cqp_request(&iwdev->rf->cqp, cqp_request); in irdma_hw_alloc_mw()
1907 irdma_hw_alloc_stag(struct irdma_device *iwdev, in irdma_hw_alloc_stag() argument
1917 cqp_request = irdma_alloc_and_get_cqp_request(&iwdev->rf->cqp, true); in irdma_hw_alloc_stag()
1931 cqp_info->in.u.alloc_stag.dev = &iwdev->rf->sc_dev; in irdma_hw_alloc_stag()
1934 status = irdma_handle_cqp_op(iwdev->rf, cqp_request); in irdma_hw_alloc_stag()
1935 irdma_put_cqp_request(&iwdev->rf->cqp, cqp_request); in irdma_hw_alloc_stag()
1997 irdma_hwreg_mr(struct irdma_device *iwdev, struct irdma_mr *iwmr, in irdma_hwreg_mr() argument
2009 cqp_request = irdma_alloc_and_get_cqp_request(&iwdev->rf->cqp, true); in irdma_hwreg_mr()
2024 iwdev->rf->sc_dev.hw_attrs.uk_attrs.hw_rev); in irdma_hwreg_mr()
2046 cqp_info->in.u.mr_reg_non_shared.dev = &iwdev->rf->sc_dev; in irdma_hwreg_mr()
2049 ret = irdma_handle_cqp_op(iwdev->rf, cqp_request); in irdma_hwreg_mr()
2050 irdma_put_cqp_request(&iwdev->rf->cqp, cqp_request); in irdma_hwreg_mr()
2106 struct irdma_device *iwdev = to_iwdev(iwmr->ibmr.device); in irdma_reg_user_mr_type_mem() local
2114 err = irdma_setup_pbles(iwdev->rf, iwmr, lvl); in irdma_reg_user_mr_type_mem()
2122 irdma_free_pble(iwdev->rf->pble_rsrc, &iwpbl->pble_alloc); in irdma_reg_user_mr_type_mem()
2128 stag = irdma_create_stag(iwdev); in irdma_reg_user_mr_type_mem()
2139 err = irdma_hwreg_mr(iwdev, iwmr, access); in irdma_reg_user_mr_type_mem()
2147 irdma_free_stag(iwdev, stag); in irdma_reg_user_mr_type_mem()
2151 irdma_free_pble(iwdev->rf->pble_rsrc, &iwpbl->pble_alloc); in irdma_reg_user_mr_type_mem()
2164 struct irdma_device *iwdev = to_iwdev(iwmr->ibmr.device); in irdma_reg_user_mr_type_qp() local
2173 if (!rdma_protocol_roce(&iwdev->ibdev, 1) && in irdma_reg_user_mr_type_qp()
2183 err = irdma_handle_q_mem(iwdev, &req, iwpbl, lvl); in irdma_reg_user_mr_type_qp()
2204 struct irdma_device *iwdev = to_iwdev(iwmr->ibmr.device); in irdma_reg_user_mr_type_cq() local
2213 …((iwdev->rf->sc_dev.hw_attrs.uk_attrs.feature_flags & IRDMA_FEATURE_CQ_RESIZE) ? 0 : IRDMA_SHADOW_… in irdma_reg_user_mr_type_cq()
2218 err = irdma_handle_q_mem(iwdev, &req, iwpbl, lvl); in irdma_reg_user_mr_type_cq()
2234 struct irdma_device *iwdev = to_iwdev(ib_mr->device); in irdma_hwdereg_mr() local
2250 cqp_request = irdma_alloc_and_get_cqp_request(&iwdev->rf->cqp, true); in irdma_hwdereg_mr()
2266 cqp_info->in.u.dealloc_stag.dev = &iwdev->rf->sc_dev; in irdma_hwdereg_mr()
2268 status = irdma_handle_cqp_op(iwdev->rf, cqp_request); in irdma_hwdereg_mr()
2269 irdma_put_cqp_request(&iwdev->rf->cqp, cqp_request); in irdma_hwdereg_mr()
2288 struct irdma_device *iwdev = to_iwdev(iwmr->ibmr.device); in irdma_rereg_mr_trans() local
2297 irdma_debug(&iwdev->rf->sc_dev, IRDMA_DEBUG_VERBS, in irdma_rereg_mr_trans()
2337 struct irdma_device *iwdev = to_iwdev(pd->device); in irdma_reg_phys_mr() local
2354 stag = irdma_create_stag(iwdev); in irdma_reg_phys_mr()
2368 ret = irdma_hwreg_mr(iwdev, iwmr, access); in irdma_reg_phys_mr()
2370 irdma_free_stag(iwdev, stag); in irdma_reg_phys_mr()
2451 dev = &iwqp->iwdev->rf->sc_dev; in irdma_post_send()
2580 irdma_debug(&iwqp->iwdev->rf->sc_dev, IRDMA_DEBUG_VERBS, in irdma_post_send()
2635 irdma_debug(&iwqp->iwdev->rf->sc_dev, IRDMA_DEBUG_VERBS, in irdma_post_recv()
2799 struct irdma_device *iwdev; in __irdma_poll_cq() local
2805 iwdev = to_iwdev(iwcq->ibcq.device); in __irdma_poll_cq()
2860 resized_bufs = irdma_process_resize_list(iwcq, iwdev, NULL); in __irdma_poll_cq()
2863 resized_bufs = irdma_process_resize_list(iwcq, iwdev, last_buf); in __irdma_poll_cq()
2870 irdma_debug(&iwdev->rf->sc_dev, IRDMA_DEBUG_VERBS, in __irdma_poll_cq()
2993 irdma_mcast_cqp_op(struct irdma_device *iwdev, in irdma_mcast_cqp_op() argument
3000 cqp_request = irdma_alloc_and_get_cqp_request(&iwdev->rf->cqp, true); in irdma_mcast_cqp_op()
3009 cqp_info->in.u.mc_create.cqp = &iwdev->rf->cqp.sc_cqp; in irdma_mcast_cqp_op()
3014 status = irdma_handle_cqp_op(iwdev->rf, cqp_request); in irdma_mcast_cqp_op()
3015 irdma_put_cqp_request(&iwdev->rf->cqp, cqp_request); in irdma_mcast_cqp_op()
3032 struct irdma_device *iwdev = iwqp->iwdev; in irdma_attach_mcast() local
3033 struct irdma_pci_f *rf = iwdev->rf; in irdma_attach_mcast()
3053 irdma_debug(&iwdev->rf->sc_dev, IRDMA_DEBUG_VERBS, in irdma_attach_mcast()
3062 irdma_debug(&iwdev->rf->sc_dev, IRDMA_DEBUG_VERBS, in irdma_attach_mcast()
3107 mc_qht_elem->mc_grp_ctx.hmc_fcn_id = iwdev->rf->sc_dev.hmc_fn_id; in irdma_attach_mcast()
3129 ret = irdma_mcast_cqp_op(iwdev, &mc_qht_elem->mc_grp_ctx, in irdma_attach_mcast()
3132 ret = irdma_mcast_cqp_op(iwdev, &mc_qht_elem->mc_grp_ctx, in irdma_attach_mcast()
3169 struct irdma_device *iwdev = iwqp->iwdev; in irdma_detach_mcast() local
3170 struct irdma_pci_f *rf = iwdev->rf; in irdma_detach_mcast()
3189 irdma_debug(&iwdev->rf->sc_dev, IRDMA_DEBUG_VERBS, in irdma_detach_mcast()
3199 ret = irdma_mcast_cqp_op(iwdev, &mc_qht_elem->mc_grp_ctx, in irdma_detach_mcast()
3202 irdma_debug(&iwdev->rf->sc_dev, IRDMA_DEBUG_VERBS, in irdma_detach_mcast()
3217 ret = irdma_mcast_cqp_op(iwdev, &mc_qht_elem->mc_grp_ctx, in irdma_detach_mcast()
3220 irdma_debug(&iwdev->rf->sc_dev, IRDMA_DEBUG_VERBS, in irdma_detach_mcast()
3255 struct irdma_device *iwdev = to_iwdev(ibdev); in irdma_get_netdev() local
3257 if (iwdev->netdev) { in irdma_get_netdev()
3258 dev_hold(iwdev->netdev); in irdma_get_netdev()
3259 return iwdev->netdev; in irdma_get_netdev()
3363 irdma_init_roce_device(struct irdma_device *iwdev) in irdma_init_roce_device() argument
3365 kc_set_roce_uverbs_cmd_mask(iwdev); in irdma_init_roce_device()
3366 iwdev->ibdev.node_type = RDMA_NODE_IB_CA; in irdma_init_roce_device()
3367 addrconf_addr_eui48((u8 *)&iwdev->ibdev.node_guid, in irdma_init_roce_device()
3368 if_getlladdr(iwdev->netdev)); in irdma_init_roce_device()
3369 irdma_set_device_roce_ops(&iwdev->ibdev); in irdma_init_roce_device()
3370 if (iwdev->rf->rdma_ver == IRDMA_GEN_2) in irdma_init_roce_device()
3371 irdma_set_device_mcast_ops(&iwdev->ibdev); in irdma_init_roce_device()
3379 irdma_init_iw_device(struct irdma_device *iwdev) in irdma_init_iw_device() argument
3381 if_t netdev = iwdev->netdev; in irdma_init_iw_device()
3383 iwdev->ibdev.node_type = RDMA_NODE_RNIC; in irdma_init_iw_device()
3384 addrconf_addr_eui48((u8 *)&iwdev->ibdev.node_guid, in irdma_init_iw_device()
3386 iwdev->ibdev.iwcm = kzalloc(sizeof(*iwdev->ibdev.iwcm), GFP_KERNEL); in irdma_init_iw_device()
3387 if (!iwdev->ibdev.iwcm) in irdma_init_iw_device()
3390 iwdev->ibdev.iwcm->add_ref = irdma_qp_add_ref; in irdma_init_iw_device()
3391 iwdev->ibdev.iwcm->rem_ref = irdma_qp_rem_ref; in irdma_init_iw_device()
3392 iwdev->ibdev.iwcm->get_qp = irdma_get_qp; in irdma_init_iw_device()
3393 iwdev->ibdev.iwcm->connect = irdma_connect; in irdma_init_iw_device()
3394 iwdev->ibdev.iwcm->accept = irdma_accept; in irdma_init_iw_device()
3395 iwdev->ibdev.iwcm->reject = irdma_reject; in irdma_init_iw_device()
3396 iwdev->ibdev.iwcm->create_listen = irdma_create_listen; in irdma_init_iw_device()
3397 iwdev->ibdev.iwcm->destroy_listen = irdma_destroy_listen; in irdma_init_iw_device()
3398 memcpy(iwdev->ibdev.iwcm->ifname, if_name(netdev), in irdma_init_iw_device()
3399 sizeof(iwdev->ibdev.iwcm->ifname)); in irdma_init_iw_device()
3400 irdma_set_device_iw_ops(&iwdev->ibdev); in irdma_init_iw_device()
3410 irdma_init_rdma_device(struct irdma_device *iwdev) in irdma_init_rdma_device() argument
3414 iwdev->ibdev.owner = THIS_MODULE; in irdma_init_rdma_device()
3415 iwdev->ibdev.uverbs_abi_ver = IRDMA_ABI_VER; in irdma_init_rdma_device()
3416 kc_set_rdma_uverbs_cmd_mask(iwdev); in irdma_init_rdma_device()
3418 if (iwdev->roce_mode) { in irdma_init_rdma_device()
3419 irdma_init_roce_device(iwdev); in irdma_init_rdma_device()
3421 ret = irdma_init_iw_device(iwdev); in irdma_init_rdma_device()
3426 iwdev->ibdev.phys_port_cnt = 1; in irdma_init_rdma_device()
3427 iwdev->ibdev.num_comp_vectors = iwdev->rf->ceqs_count; in irdma_init_rdma_device()
3428 iwdev->ibdev.dev.parent = iwdev->rf->dev_ctx.dev; in irdma_init_rdma_device()
3429 set_ibdev_dma_device(iwdev->ibdev, &iwdev->rf->pcidev->dev); in irdma_init_rdma_device()
3430 irdma_set_device_ops(&iwdev->ibdev); in irdma_init_rdma_device()
3431 if (iwdev->rf->rdma_ver == IRDMA_GEN_1) in irdma_init_rdma_device()
3432 irdma_set_device_gen1_ops(&iwdev->ibdev); in irdma_init_rdma_device()
3442 irdma_port_ibevent(struct irdma_device *iwdev) in irdma_port_ibevent() argument
3446 event.device = &iwdev->ibdev; in irdma_port_ibevent()
3449 iwdev->iw_status ? IB_EVENT_PORT_ACTIVE : IB_EVENT_PORT_ERR; in irdma_port_ibevent()
3459 irdma_ib_unregister_device(struct irdma_device *iwdev) in irdma_ib_unregister_device() argument
3461 iwdev->iw_status = 0; in irdma_ib_unregister_device()
3462 irdma_port_ibevent(iwdev); in irdma_ib_unregister_device()
3463 ib_unregister_device(&iwdev->ibdev); in irdma_ib_unregister_device()
3464 dev_put(iwdev->netdev); in irdma_ib_unregister_device()
3465 kfree(iwdev->ibdev.iwcm); in irdma_ib_unregister_device()
3466 iwdev->ibdev.iwcm = NULL; in irdma_ib_unregister_device()
3474 irdma_ib_register_device(struct irdma_device *iwdev) in irdma_ib_register_device() argument
3478 ret = irdma_init_rdma_device(iwdev); in irdma_ib_register_device()
3482 dev_hold(iwdev->netdev); in irdma_ib_register_device()
3483 sprintf(iwdev->ibdev.name, "irdma-%s", if_name(iwdev->netdev)); in irdma_ib_register_device()
3484 ret = ib_register_device(&iwdev->ibdev, NULL); in irdma_ib_register_device()
3488 iwdev->iw_status = 1; in irdma_ib_register_device()
3489 irdma_port_ibevent(iwdev); in irdma_ib_register_device()
3494 kfree(iwdev->ibdev.iwcm); in irdma_ib_register_device()
3495 iwdev->ibdev.iwcm = NULL; in irdma_ib_register_device()
3496 irdma_debug(&iwdev->rf->sc_dev, IRDMA_DEBUG_VERBS, "Register RDMA device fail\n"); in irdma_ib_register_device()