Home
last modified time | relevance | path

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

/Linux-v5.4/drivers/misc/mic/scif/
Dscif_main.c34 struct scif_dev *scifdev = in scif_intr_bh_handler() local
37 if (scifdev_self(scifdev)) in scif_intr_bh_handler()
38 scif_loopb_msg_handler(scifdev, scifdev->qpairs); in scif_intr_bh_handler()
40 scif_nodeqp_intrhandler(scifdev, scifdev->qpairs); in scif_intr_bh_handler()
43 int scif_setup_intr_wq(struct scif_dev *scifdev) in scif_setup_intr_wq() argument
45 if (!scifdev->intr_wq) { in scif_setup_intr_wq()
46 snprintf(scifdev->intr_wqname, sizeof(scifdev->intr_wqname), in scif_setup_intr_wq()
47 "SCIF INTR %d", scifdev->node); in scif_setup_intr_wq()
48 scifdev->intr_wq = in scif_setup_intr_wq()
49 alloc_ordered_workqueue(scifdev->intr_wqname, 0); in scif_setup_intr_wq()
[all …]
Dscif_map.h16 struct scif_dev *scifdev, size_t size, in scif_alloc_coherent() argument
21 if (scifdev_self(scifdev)) { in scif_alloc_coherent()
26 va = dma_alloc_coherent(&scifdev->sdev->dev, in scif_alloc_coherent()
28 if (va && scifdev_is_p2p(scifdev)) in scif_alloc_coherent()
29 *dma_handle = *dma_handle + scifdev->base_addr; in scif_alloc_coherent()
36 struct scif_dev *scifdev, size_t size) in scif_free_coherent() argument
38 if (scifdev_self(scifdev)) { in scif_free_coherent()
41 if (scifdev_is_p2p(scifdev) && local > scifdev->base_addr) in scif_free_coherent()
42 local = local - scifdev->base_addr; in scif_free_coherent()
43 dma_free_coherent(&scifdev->sdev->dev, in scif_free_coherent()
[all …]
Dscif_peer_bus.c26 struct scif_dev *scifdev = &scif_dev[sdev->dnode]; in scif_peer_release_dev() local
28 scif_cleanup_scifdev(scifdev); in scif_peer_release_dev()
32 static int scif_peer_initialize_device(struct scif_dev *scifdev) in scif_peer_initialize_device() argument
43 spdev->dev.parent = scifdev->sdev->dev.parent; in scif_peer_initialize_device()
45 spdev->dnode = scifdev->node; in scif_peer_initialize_device()
51 rcu_assign_pointer(scifdev->spdev, spdev); in scif_peer_initialize_device()
59 dev_err(&scifdev->sdev->dev, in scif_peer_initialize_device()
60 "dnode %d: initialize_device rc %d\n", scifdev->node, ret); in scif_peer_initialize_device()
64 static int scif_peer_add_device(struct scif_dev *scifdev) in scif_peer_add_device() argument
66 struct scif_peer_dev *spdev = rcu_dereference(scifdev->spdev); in scif_peer_add_device()
[all …]
Dscif_nodeqp.c97 int local_size, struct scif_dev *scifdev) in scif_setup_qp_connect() argument
115 err = scif_map_single(&qp->local_buf, local_q, scifdev, local_size); in scif_setup_qp_connect()
132 scifdev, sizeof(struct scif_qp)); in scif_setup_qp_connect()
138 scif_unmap_single(qp->local_buf, scifdev, local_size); in scif_setup_qp_connect()
148 struct scif_dev *scifdev) in scif_setup_qp_accept() argument
159 remote_qp = scif_ioremap(phys, sizeof(struct scif_qp), scifdev); in scif_setup_qp_accept()
169 remote_q = scif_ioremap(qp->remote_buf, remote_size, scifdev); in scif_setup_qp_accept()
189 err = scif_map_single(&qp->local_buf, local_q, scifdev, local_size); in scif_setup_qp_accept()
201 err = scif_map_single(qp_offset, qp, scifdev, in scif_setup_qp_accept()
208 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.c51 void scif_free_qp(struct scif_dev *scifdev) in scif_free_qp() argument
53 struct scif_qp *qp = scifdev->qpairs; in scif_free_qp()
57 scif_unmap_single(qp->local_buf, scifdev, qp->inbound_q.size); in scif_free_qp()
59 scif_unmap_single(qp->local_qp, scifdev, sizeof(struct scif_qp)); in scif_free_qp()
60 kfree(scifdev->qpairs); in scif_free_qp()
61 scifdev->qpairs = NULL; in scif_free_qp()
146 struct scif_dev *scifdev = &scif_dev[node]; in scif_handle_remove_node() local
148 if (scif_peer_unregister_device(scifdev)) in scif_handle_remove_node()
149 scif_send_acks(scifdev); in scif_handle_remove_node()
177 struct scif_dev *scifdev = &scif_dev[node_id]; in scif_disconnect_node() local
[all …]
Dscif_rma.h353 void scif_alloc_req(struct scif_dev *scifdev, struct scifmsg *msg);
354 void scif_alloc_gnt_rej(struct scif_dev *scifdev, struct scifmsg *msg);
355 void scif_free_virt(struct scif_dev *scifdev, struct scifmsg *msg);
356 void scif_recv_reg(struct scif_dev *scifdev, struct scifmsg *msg);
357 void scif_recv_unreg(struct scif_dev *scifdev, struct scifmsg *msg);
358 void scif_recv_reg_ack(struct scif_dev *scifdev, struct scifmsg *msg);
359 void scif_recv_reg_nack(struct scif_dev *scifdev, struct scifmsg *msg);
360 void scif_recv_unreg_ack(struct scif_dev *scifdev, struct scifmsg *msg);
361 void scif_recv_unreg_nack(struct scif_dev *scifdev, struct scifmsg *msg);
362 void scif_recv_munmap(struct scif_dev *scifdev, struct scifmsg *msg);
[all …]
Dscif_epd.h184 void scif_cnctreq(struct scif_dev *scifdev, struct scifmsg *msg);
185 void scif_cnctgnt(struct scif_dev *scifdev, struct scifmsg *msg);
186 void scif_cnctgnt_ack(struct scif_dev *scifdev, struct scifmsg *msg);
187 void scif_cnctgnt_nack(struct scif_dev *scifdev, struct scifmsg *msg);
188 void scif_cnctrej(struct scif_dev *scifdev, struct scifmsg *msg);
189 void scif_discnct(struct scif_dev *scifdev, struct scifmsg *msg);
190 void scif_discnt_ack(struct scif_dev *scifdev, struct scifmsg *msg);
191 void scif_clientsend(struct scif_dev *scifdev, struct scifmsg *msg);
192 void scif_clientrcvd(struct scif_dev *scifdev, struct scifmsg *msg);
Dscif_epd.c119 void scif_cnctreq(struct scif_dev *scifdev, struct scifmsg *msg) in scif_cnctreq() argument
165 void scif_cnctgnt(struct scif_dev *scifdev, struct scifmsg *msg) in scif_cnctgnt() argument
190 void scif_cnctgnt_ack(struct scif_dev *scifdev, struct scifmsg *msg) in scif_cnctgnt_ack() argument
212 void scif_cnctgnt_nack(struct scif_dev *scifdev, struct scifmsg *msg) in scif_cnctgnt_nack() argument
229 void scif_cnctrej(struct scif_dev *scifdev, struct scifmsg *msg) in scif_cnctrej() argument
254 void scif_discnct(struct scif_dev *scifdev, struct scifmsg *msg) in scif_discnct() argument
308 void scif_discnt_ack(struct scif_dev *scifdev, struct scifmsg *msg) in scif_discnt_ack() argument
324 void scif_clientsend(struct scif_dev *scifdev, struct scifmsg *msg) in scif_clientsend() argument
340 void scif_clientrcvd(struct scif_dev *scifdev, struct scifmsg *msg) in scif_clientrcvd() argument
Dscif_main.h251 static inline int _scifdev_alive(struct scif_dev *scifdev) in _scifdev_alive() argument
256 spdev = rcu_dereference(scifdev->spdev); in _scifdev_alive()
265 int scif_setup_intr_wq(struct scif_dev *scifdev);
266 void scif_destroy_intr_wq(struct scif_dev *scifdev);
272 void scif_stop(struct scif_dev *scifdev);
Dscif_rma.c464 scif_create_remote_window(struct scif_dev *scifdev, int nr_pages) in scif_create_remote_window() argument
485 if (scif_create_remote_lookup(scifdev, window)) in scif_create_remote_window()
1041 void scif_alloc_req(struct scif_dev *scifdev, struct scifmsg *msg) in scif_alloc_req() argument
1047 window = scif_create_remote_window(scifdev, nr_pages); in scif_alloc_req()
1057 err = scif_nodeqp_send(scifdev, msg); in scif_alloc_req()
1063 dev_err(&scifdev->sdev->dev, in scif_alloc_req()
1067 scif_nodeqp_send(scifdev, msg); in scif_alloc_req()
1076 void scif_alloc_gnt_rej(struct scif_dev *scifdev, struct scifmsg *msg) in scif_alloc_gnt_rej() argument
1100 void scif_free_virt(struct scif_dev *scifdev, struct scifmsg *msg) in scif_free_virt() argument
1138 void scif_recv_reg(struct scif_dev *scifdev, struct scifmsg *msg) in scif_recv_reg() argument
[all …]
Dscif_fence.c18 void scif_recv_mark(struct scif_dev *scifdev, struct scifmsg *msg) in scif_recv_mark() argument
40 void scif_recv_mark_resp(struct scif_dev *scifdev, struct scifmsg *msg) in scif_recv_mark_resp() argument
63 void scif_recv_wait(struct scif_dev *scifdev, struct scifmsg *msg) in scif_recv_wait() argument
100 void scif_recv_wait_resp(struct scif_dev *scifdev, struct scifmsg *msg) in scif_recv_wait_resp() argument
121 void scif_recv_sig_local(struct scif_dev *scifdev, struct scifmsg *msg) in scif_recv_sig_local() argument
142 void scif_recv_sig_remote(struct scif_dev *scifdev, struct scifmsg *msg) in scif_recv_sig_remote() argument
163 void scif_recv_sig_resp(struct scif_dev *scifdev, struct scifmsg *msg) in scif_recv_sig_resp() argument
Dscif_peer_bus.h20 int scif_peer_unregister_device(struct scif_dev *scifdev);
Dscif_mmap.c22 void scif_recv_munmap(struct scif_dev *scifdev, struct scifmsg *msg) in scif_recv_munmap() argument
42 dev_err(&scifdev->sdev->dev, in scif_recv_munmap()
198 struct scif_dev *scifdev = (struct scif_dev *)ep->remote_dev; in scif_get_phys() local
199 struct scif_hw_dev *sdev = scifdev->sdev; in scif_get_phys()
206 if (!scifdev_self(scifdev) && sdev->aper && sdev->card_rel_da) in scif_get_phys()
Dscif_dma.c79 struct scif_dev *scifdev; in scif_reserve_dma_chan() local
87 scifdev = &scif_dev[0]; in scif_reserve_dma_chan()
89 scifdev = ep->remote_dev; in scif_reserve_dma_chan()
90 sdev = scifdev->sdev; in scif_reserve_dma_chan()
93 chan = sdev->dma_ch[scifdev->dma_ch_idx]; in scif_reserve_dma_chan()
94 scifdev->dma_ch_idx = (scifdev->dma_ch_idx + 1) % sdev->num_dma_ch; in scif_reserve_dma_chan()