Home
last modified time | relevance | path

Searched refs:scifdev (Results 1 – 15 of 15) sorted by relevance

/linux-4.4.14/drivers/misc/mic/scif/
Dscif_main.c43 struct scif_dev *scifdev = in scif_intr_bh_handler() local
46 if (scifdev_self(scifdev)) in scif_intr_bh_handler()
47 scif_loopb_msg_handler(scifdev, scifdev->qpairs); in scif_intr_bh_handler()
49 scif_nodeqp_intrhandler(scifdev, scifdev->qpairs); in scif_intr_bh_handler()
52 int scif_setup_intr_wq(struct scif_dev *scifdev) in scif_setup_intr_wq() argument
54 if (!scifdev->intr_wq) { in scif_setup_intr_wq()
55 snprintf(scifdev->intr_wqname, sizeof(scifdev->intr_wqname), in scif_setup_intr_wq()
56 "SCIF INTR %d", scifdev->node); in scif_setup_intr_wq()
57 scifdev->intr_wq = in scif_setup_intr_wq()
58 alloc_ordered_workqueue(scifdev->intr_wqname, 0); in scif_setup_intr_wq()
[all …]
Dscif_map.h25 struct scif_dev *scifdev, size_t size, in scif_alloc_coherent() argument
30 if (scifdev_self(scifdev)) { in scif_alloc_coherent()
35 va = dma_alloc_coherent(&scifdev->sdev->dev, in scif_alloc_coherent()
37 if (va && scifdev_is_p2p(scifdev)) in scif_alloc_coherent()
38 *dma_handle = *dma_handle + scifdev->base_addr; in scif_alloc_coherent()
45 struct scif_dev *scifdev, size_t size) in scif_free_coherent() argument
47 if (scifdev_self(scifdev)) { in scif_free_coherent()
50 if (scifdev_is_p2p(scifdev) && local > scifdev->base_addr) in scif_free_coherent()
51 local = local - scifdev->base_addr; in scif_free_coherent()
52 dma_free_coherent(&scifdev->sdev->dev, in scif_free_coherent()
[all …]
Dscif_peer_bus.c34 struct scif_dev *scifdev = &scif_dev[sdev->dnode]; in scif_peer_release_dev() local
36 scif_cleanup_scifdev(scifdev); in scif_peer_release_dev()
40 static int scif_peer_initialize_device(struct scif_dev *scifdev) in scif_peer_initialize_device() argument
51 spdev->dev.parent = scifdev->sdev->dev.parent; in scif_peer_initialize_device()
53 spdev->dnode = scifdev->node; in scif_peer_initialize_device()
59 rcu_assign_pointer(scifdev->spdev, spdev); in scif_peer_initialize_device()
67 dev_err(&scifdev->sdev->dev, in scif_peer_initialize_device()
68 "dnode %d: initialize_device rc %d\n", scifdev->node, ret); in scif_peer_initialize_device()
72 static int scif_peer_add_device(struct scif_dev *scifdev) in scif_peer_add_device() argument
74 struct scif_peer_dev *spdev = rcu_dereference(scifdev->spdev); in scif_peer_add_device()
[all …]
Dscif_nodeqp.c106 int local_size, struct scif_dev *scifdev) in scif_setup_qp_connect() argument
124 err = scif_map_single(&qp->local_buf, local_q, scifdev, local_size); in scif_setup_qp_connect()
141 scifdev, sizeof(struct scif_qp)); in scif_setup_qp_connect()
147 scif_unmap_single(qp->local_buf, scifdev, local_size); in scif_setup_qp_connect()
157 struct scif_dev *scifdev) in scif_setup_qp_accept() argument
168 remote_qp = scif_ioremap(phys, sizeof(struct scif_qp), scifdev); in scif_setup_qp_accept()
178 remote_q = scif_ioremap(qp->remote_buf, remote_size, scifdev); in scif_setup_qp_accept()
198 err = scif_map_single(&qp->local_buf, local_q, scifdev, local_size); in scif_setup_qp_accept()
210 err = scif_map_single(qp_offset, qp, scifdev, in scif_setup_qp_accept()
217 scif_unmap_single(qp->local_buf, scifdev, local_size); in scif_setup_qp_accept()
[all …]
Dscif_nodeqp.h184 int scif_nodeqp_send(struct scif_dev *scifdev, struct scifmsg *msg);
185 int _scif_nodeqp_send(struct scif_dev *scifdev, struct scifmsg *msg);
186 void scif_nodeqp_intrhandler(struct scif_dev *scifdev, struct scif_qp *qp);
187 int scif_loopb_msg_handler(struct scif_dev *scifdev, struct scif_qp *qp);
188 int scif_setup_qp(struct scif_dev *scifdev);
191 int local_size, struct scif_dev *scifdev);
194 struct scif_dev *scifdev);
195 int scif_setup_qp_connect_response(struct scif_dev *scifdev,
197 int scif_setup_loopback_qp(struct scif_dev *scifdev);
198 int scif_destroy_loopback_qp(struct scif_dev *scifdev);
[all …]
Dscif_nm.c60 void scif_free_qp(struct scif_dev *scifdev) in scif_free_qp() argument
62 struct scif_qp *qp = scifdev->qpairs; in scif_free_qp()
66 scif_unmap_single(qp->local_buf, scifdev, qp->inbound_q.size); in scif_free_qp()
68 scif_unmap_single(qp->local_qp, scifdev, sizeof(struct scif_qp)); in scif_free_qp()
69 kfree(scifdev->qpairs); in scif_free_qp()
70 scifdev->qpairs = NULL; in scif_free_qp()
155 struct scif_dev *scifdev = &scif_dev[node]; in scif_handle_remove_node() local
157 if (scif_peer_unregister_device(scifdev)) in scif_handle_remove_node()
158 scif_send_acks(scifdev); in scif_handle_remove_node()
186 struct scif_dev *scifdev = &scif_dev[node_id]; in scif_disconnect_node() local
[all …]
Dscif_rma.h340 void scif_alloc_req(struct scif_dev *scifdev, struct scifmsg *msg);
341 void scif_alloc_gnt_rej(struct scif_dev *scifdev, struct scifmsg *msg);
342 void scif_free_virt(struct scif_dev *scifdev, struct scifmsg *msg);
343 void scif_recv_reg(struct scif_dev *scifdev, struct scifmsg *msg);
344 void scif_recv_unreg(struct scif_dev *scifdev, struct scifmsg *msg);
345 void scif_recv_reg_ack(struct scif_dev *scifdev, struct scifmsg *msg);
346 void scif_recv_reg_nack(struct scif_dev *scifdev, struct scifmsg *msg);
347 void scif_recv_unreg_ack(struct scif_dev *scifdev, struct scifmsg *msg);
348 void scif_recv_unreg_nack(struct scif_dev *scifdev, struct scifmsg *msg);
349 void scif_recv_munmap(struct scif_dev *scifdev, struct scifmsg *msg);
[all …]
Dscif_epd.h194 void scif_cnctreq(struct scif_dev *scifdev, struct scifmsg *msg);
195 void scif_cnctgnt(struct scif_dev *scifdev, struct scifmsg *msg);
196 void scif_cnctgnt_ack(struct scif_dev *scifdev, struct scifmsg *msg);
197 void scif_cnctgnt_nack(struct scif_dev *scifdev, struct scifmsg *msg);
198 void scif_cnctrej(struct scif_dev *scifdev, struct scifmsg *msg);
199 void scif_discnct(struct scif_dev *scifdev, struct scifmsg *msg);
200 void scif_discnt_ack(struct scif_dev *scifdev, struct scifmsg *msg);
201 void scif_clientsend(struct scif_dev *scifdev, struct scifmsg *msg);
202 void scif_clientrcvd(struct scif_dev *scifdev, struct scifmsg *msg);
Dscif_epd.c128 void scif_cnctreq(struct scif_dev *scifdev, struct scifmsg *msg) in scif_cnctreq() argument
174 void scif_cnctgnt(struct scif_dev *scifdev, struct scifmsg *msg) in scif_cnctgnt() argument
199 void scif_cnctgnt_ack(struct scif_dev *scifdev, struct scifmsg *msg) in scif_cnctgnt_ack() argument
221 void scif_cnctgnt_nack(struct scif_dev *scifdev, struct scifmsg *msg) in scif_cnctgnt_nack() argument
238 void scif_cnctrej(struct scif_dev *scifdev, struct scifmsg *msg) in scif_cnctrej() argument
263 void scif_discnct(struct scif_dev *scifdev, struct scifmsg *msg) in scif_discnct() argument
317 void scif_discnt_ack(struct scif_dev *scifdev, struct scifmsg *msg) in scif_discnt_ack() argument
333 void scif_clientsend(struct scif_dev *scifdev, struct scifmsg *msg) in scif_clientsend() argument
349 void scif_clientrcvd(struct scif_dev *scifdev, struct scifmsg *msg) in scif_clientrcvd() argument
Dscif_main.h260 static inline int _scifdev_alive(struct scif_dev *scifdev) in _scifdev_alive() argument
265 spdev = rcu_dereference(scifdev->spdev); in _scifdev_alive()
274 int scif_setup_intr_wq(struct scif_dev *scifdev);
275 void scif_destroy_intr_wq(struct scif_dev *scifdev);
281 void scif_stop(struct scif_dev *scifdev);
Dscif_rma.c480 scif_create_remote_window(struct scif_dev *scifdev, int nr_pages) in scif_create_remote_window() argument
501 if (scif_create_remote_lookup(scifdev, window)) in scif_create_remote_window()
1057 void scif_alloc_req(struct scif_dev *scifdev, struct scifmsg *msg) in scif_alloc_req() argument
1063 window = scif_create_remote_window(scifdev, nr_pages); in scif_alloc_req()
1073 err = scif_nodeqp_send(scifdev, msg); in scif_alloc_req()
1079 dev_err(&scifdev->sdev->dev, in scif_alloc_req()
1083 scif_nodeqp_send(scifdev, msg); in scif_alloc_req()
1092 void scif_alloc_gnt_rej(struct scif_dev *scifdev, struct scifmsg *msg) in scif_alloc_gnt_rej() argument
1116 void scif_free_virt(struct scif_dev *scifdev, struct scifmsg *msg) in scif_free_virt() argument
1154 void scif_recv_reg(struct scif_dev *scifdev, struct scifmsg *msg) in scif_recv_reg() argument
[all …]
Dscif_peer_bus.h28 int scif_peer_unregister_device(struct scif_dev *scifdev);
Dscif_fence.c27 void scif_recv_mark(struct scif_dev *scifdev, struct scifmsg *msg) in scif_recv_mark() argument
48 void scif_recv_mark_resp(struct scif_dev *scifdev, struct scifmsg *msg) in scif_recv_mark_resp() argument
71 void scif_recv_wait(struct scif_dev *scifdev, struct scifmsg *msg) in scif_recv_wait() argument
108 void scif_recv_wait_resp(struct scif_dev *scifdev, struct scifmsg *msg) in scif_recv_wait_resp() argument
129 void scif_recv_sig_local(struct scif_dev *scifdev, struct scifmsg *msg) in scif_recv_sig_local() argument
150 void scif_recv_sig_remote(struct scif_dev *scifdev, struct scifmsg *msg) in scif_recv_sig_remote() argument
171 void scif_recv_sig_resp(struct scif_dev *scifdev, struct scifmsg *msg) in scif_recv_sig_resp() argument
Dscif_mmap.c31 void scif_recv_munmap(struct scif_dev *scifdev, struct scifmsg *msg) in scif_recv_munmap() argument
51 dev_err(&scifdev->sdev->dev, in scif_recv_munmap()
207 struct scif_dev *scifdev = (struct scif_dev *)ep->remote_dev; in scif_get_phys() local
208 struct scif_hw_dev *sdev = scifdev->sdev; in scif_get_phys()
215 if (!scifdev_self(scifdev) && sdev->aper && sdev->card_rel_da) in scif_get_phys()
Dscif_dma.c93 struct scif_dev *scifdev; in scif_reserve_dma_chan() local
101 scifdev = &scif_dev[0]; in scif_reserve_dma_chan()
103 scifdev = ep->remote_dev; in scif_reserve_dma_chan()
104 sdev = scifdev->sdev; in scif_reserve_dma_chan()
107 chan = sdev->dma_ch[scifdev->dma_ch_idx]; in scif_reserve_dma_chan()
108 scifdev->dma_ch_idx = (scifdev->dma_ch_idx + 1) % sdev->num_dma_ch; in scif_reserve_dma_chan()