Lines Matching refs:device

131 enum rdma_link_layer rdma_port_get_link_layer(struct ib_device *device, u8 port_num)  in rdma_port_get_link_layer()  argument
133 if (device->get_link_layer) in rdma_port_get_link_layer()
134 return device->get_link_layer(device, port_num); in rdma_port_get_link_layer()
136 switch (rdma_node_get_transport(device->node_type)) { in rdma_port_get_link_layer()
151 struct ib_pd *ib_alloc_pd(struct ib_device *device) in ib_alloc_pd() argument
155 pd = device->alloc_pd(device, NULL, NULL); in ib_alloc_pd()
158 pd->device = device; in ib_alloc_pd()
172 return pd->device->dealloc_pd(pd); in ib_dealloc_pd()
182 ah = pd->device->create_ah(pd, ah_attr); in ib_create_ah()
185 ah->device = pd->device; in ib_create_ah()
195 int ib_init_ah_from_wc(struct ib_device *device, u8 port_num, struct ib_wc *wc, in ib_init_ah_from_wc() argument
201 int is_eth = (rdma_port_get_link_layer(device, port_num) == in ib_init_ah_from_wc()
232 ret = ib_find_cached_gid(device, &grh->dgid, &port_num, in ib_init_ah_from_wc()
253 ret = ib_init_ah_from_wc(pd->device, port_num, wc, grh, &ah_attr); in ib_create_ah_from_wc()
263 return ah->device->modify_ah ? in ib_modify_ah()
264 ah->device->modify_ah(ah, ah_attr) : in ib_modify_ah()
271 return ah->device->query_ah ? in ib_query_ah()
272 ah->device->query_ah(ah, ah_attr) : in ib_query_ah()
283 ret = ah->device->destroy_ah(ah); in ib_destroy_ah()
298 if (!pd->device->create_srq) in ib_create_srq()
301 srq = pd->device->create_srq(pd, srq_init_attr, NULL); in ib_create_srq()
304 srq->device = pd->device; in ib_create_srq()
328 return srq->device->modify_srq ? in ib_modify_srq()
329 srq->device->modify_srq(srq, srq_attr, srq_attr_mask, NULL) : in ib_modify_srq()
337 return srq->device->query_srq ? in ib_query_srq()
338 srq->device->query_srq(srq, srq_attr) : -ENOSYS; in ib_query_srq()
360 ret = srq->device->destroy_srq(srq); in ib_destroy_srq()
380 spin_lock_irqsave(&qp->device->event_handler_lock, flags); in __ib_shared_qp_event_handler()
384 spin_unlock_irqrestore(&qp->device->event_handler_lock, flags); in __ib_shared_qp_event_handler()
407 qp->device = real_qp->device; in __ib_open_qp()
413 spin_lock_irqsave(&real_qp->device->event_handler_lock, flags); in __ib_open_qp()
415 spin_unlock_irqrestore(&real_qp->device->event_handler_lock, flags); in __ib_open_qp()
446 struct ib_device *device; in ib_create_qp() local
448 device = pd ? pd->device : qp_init_attr->xrcd->device; in ib_create_qp()
449 qp = device->create_qp(pd, qp_init_attr, NULL); in ib_create_qp()
452 qp->device = device; in ib_create_qp()
474 real_qp->device->destroy_qp(real_qp); in ib_create_qp()
874 (rdma_port_get_link_layer(qp->device, qp_attr->ah_attr.port_num) == IB_LINK_LAYER_ETHERNET)) { in ib_resolve_eth_l2_attrs()
875 ret = ib_query_gid(qp->device, qp_attr->ah_attr.port_num, in ib_resolve_eth_l2_attrs()
913 return qp->device->modify_qp(qp->real_qp, qp_attr, qp_attr_mask, NULL); in ib_modify_qp()
922 return qp->device->query_qp ? in ib_query_qp()
923 qp->device->query_qp(qp->real_qp, qp_attr, qp_attr_mask, qp_init_attr) : in ib_query_qp()
937 spin_lock_irqsave(&real_qp->device->event_handler_lock, flags); in ib_close_qp()
939 spin_unlock_irqrestore(&real_qp->device->event_handler_lock, flags); in ib_close_qp()
994 ret = qp->device->destroy_qp(qp); in ib_destroy_qp()
1012 struct ib_cq *ib_create_cq(struct ib_device *device, in ib_create_cq() argument
1019 cq = device->create_cq(device, cqe, comp_vector, NULL, NULL); in ib_create_cq()
1022 cq->device = device; in ib_create_cq()
1036 return cq->device->modify_cq ? in ib_modify_cq()
1037 cq->device->modify_cq(cq, cq_count, cq_period) : -ENOSYS; in ib_modify_cq()
1046 return cq->device->destroy_cq(cq); in ib_destroy_cq()
1052 return cq->device->resize_cq ? in ib_resize_cq()
1053 cq->device->resize_cq(cq, cqe, NULL) : -ENOSYS; in ib_resize_cq()
1068 mr = pd->device->get_dma_mr(pd, mr_access_flags); in ib_get_dma_mr()
1071 mr->device = pd->device; in ib_get_dma_mr()
1095 if (!pd->device->reg_phys_mr) in ib_reg_phys_mr()
1098 mr = pd->device->reg_phys_mr(pd, phys_buf_array, num_phys_buf, in ib_reg_phys_mr()
1102 mr->device = pd->device; in ib_reg_phys_mr()
1128 if (!mr->device->rereg_phys_mr) in ib_rereg_phys_mr()
1136 ret = mr->device->rereg_phys_mr(mr, mr_rereg_mask, pd, in ib_rereg_phys_mr()
1151 return mr->device->query_mr ? in ib_query_mr()
1152 mr->device->query_mr(mr, mr_attr) : -ENOSYS; in ib_query_mr()
1165 ret = mr->device->dereg_mr(mr); in ib_dereg_mr()
1178 if (!pd->device->create_mr) in ib_create_mr()
1181 mr = pd->device->create_mr(pd, mr_init_attr); in ib_create_mr()
1184 mr->device = pd->device; in ib_create_mr()
1204 ret = mr->device->destroy_mr(mr); in ib_destroy_mr()
1216 if (!pd->device->alloc_fast_reg_mr) in ib_alloc_fast_reg_mr()
1219 mr = pd->device->alloc_fast_reg_mr(pd, max_page_list_len); in ib_alloc_fast_reg_mr()
1222 mr->device = pd->device; in ib_alloc_fast_reg_mr()
1233 struct ib_fast_reg_page_list *ib_alloc_fast_reg_page_list(struct ib_device *device, in ib_alloc_fast_reg_page_list() argument
1238 if (!device->alloc_fast_reg_page_list) in ib_alloc_fast_reg_page_list()
1241 page_list = device->alloc_fast_reg_page_list(device, max_page_list_len); in ib_alloc_fast_reg_page_list()
1244 page_list->device = device; in ib_alloc_fast_reg_page_list()
1254 page_list->device->free_fast_reg_page_list(page_list); in ib_free_fast_reg_page_list()
1264 if (!pd->device->alloc_mw) in ib_alloc_mw()
1267 mw = pd->device->alloc_mw(pd, type); in ib_alloc_mw()
1269 mw->device = pd->device; in ib_alloc_mw()
1286 ret = mw->device->dealloc_mw(mw); in ib_dealloc_mw()
1302 if (!pd->device->alloc_fmr) in ib_alloc_fmr()
1305 fmr = pd->device->alloc_fmr(pd, mr_access_flags, fmr_attr); in ib_alloc_fmr()
1307 fmr->device = pd->device; in ib_alloc_fmr()
1324 return fmr->device->unmap_fmr(fmr_list); in ib_unmap_fmr()
1334 ret = fmr->device->dealloc_fmr(fmr); in ib_dealloc_fmr()
1348 if (!qp->device->attach_mcast) in ib_attach_mcast()
1353 ret = qp->device->attach_mcast(qp, gid, lid); in ib_attach_mcast()
1364 if (!qp->device->detach_mcast) in ib_detach_mcast()
1369 ret = qp->device->detach_mcast(qp, gid, lid); in ib_detach_mcast()
1376 struct ib_xrcd *ib_alloc_xrcd(struct ib_device *device) in ib_alloc_xrcd() argument
1380 if (!device->alloc_xrcd) in ib_alloc_xrcd()
1383 xrcd = device->alloc_xrcd(device, NULL, NULL); in ib_alloc_xrcd()
1385 xrcd->device = device; in ib_alloc_xrcd()
1411 return xrcd->device->dealloc_xrcd(xrcd); in ib_dealloc_xrcd()
1420 if (!qp->device->create_flow) in ib_create_flow()
1423 flow_id = qp->device->create_flow(qp, flow_attr, domain); in ib_create_flow()
1435 err = qp->device->destroy_flow(flow_id); in ib_destroy_flow()
1445 return mr->device->check_mr_status ? in ib_check_mr_status()
1446 mr->device->check_mr_status(mr, check_mask, mr_status) : -ENOSYS; in ib_check_mr_status()