Lines Matching refs:scifdev

26 	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()
73 dev_err(&scifdev->sdev->dev, in scif_peer_add_device()
74 "dnode %d: peer device_add failed\n", scifdev->node); in scif_peer_add_device()
79 scifdev->signal_pool = dmam_pool_create(pool_name, &scifdev->sdev->dev, in scif_peer_add_device()
82 if (!scifdev->signal_pool) { in scif_peer_add_device()
83 dev_err(&scifdev->sdev->dev, in scif_peer_add_device()
84 "dnode %d: dmam_pool_create failed\n", scifdev->node); in scif_peer_add_device()
93 RCU_INIT_POINTER(scifdev->spdev, NULL); in scif_peer_add_device()
105 struct scif_dev *scifdev = container_of(work, struct scif_dev, in scif_add_peer_device() local
108 scif_peer_add_device(scifdev); in scif_add_peer_device()
123 void scif_peer_register_device(struct scif_dev *scifdev) in scif_peer_register_device() argument
127 mutex_lock(&scifdev->lock); in scif_peer_register_device()
128 ret = scif_peer_initialize_device(scifdev); in scif_peer_register_device()
131 schedule_work(&scifdev->peer_add_work); in scif_peer_register_device()
133 mutex_unlock(&scifdev->lock); in scif_peer_register_device()
136 int scif_peer_unregister_device(struct scif_dev *scifdev) in scif_peer_unregister_device() argument
140 mutex_lock(&scifdev->lock); in scif_peer_unregister_device()
142 flush_work(&scifdev->peer_add_work); in scif_peer_unregister_device()
148 spdev = rcu_dereference(scifdev->spdev); in scif_peer_unregister_device()
150 mutex_unlock(&scifdev->lock); in scif_peer_unregister_device()
154 RCU_INIT_POINTER(scifdev->spdev, NULL); in scif_peer_unregister_device()
156 mutex_unlock(&scifdev->lock); in scif_peer_unregister_device()