Searched refs:rvdev (Results 1 - 4 of 4) sorted by relevance

/linux-4.1.27/drivers/remoteproc/
H A Dremoteproc_virtio.c36 struct rproc *rproc = rvring->rvdev->rproc; rproc_virtio_notify()
76 struct rproc_vdev *rvdev = vdev_to_rvdev(vdev); rp_find_vq() local
84 /* we're temporarily limited to two virtqueues per rvdev */ rp_find_vq()
85 if (id >= ARRAY_SIZE(rvdev->vring)) rp_find_vq()
91 ret = rproc_alloc_vring(rvdev, id); rp_find_vq()
95 rvring = &rvdev->vring[id]; rp_find_vq()
179 struct rproc_vdev *rvdev = vdev_to_rvdev(vdev); rproc_virtio_get_status() local
182 rsc = (void *)rvdev->rproc->table_ptr + rvdev->rsc_offset; rproc_virtio_get_status()
189 struct rproc_vdev *rvdev = vdev_to_rvdev(vdev); rproc_virtio_set_status() local
192 rsc = (void *)rvdev->rproc->table_ptr + rvdev->rsc_offset; rproc_virtio_set_status()
200 struct rproc_vdev *rvdev = vdev_to_rvdev(vdev); rproc_virtio_reset() local
203 rsc = (void *)rvdev->rproc->table_ptr + rvdev->rsc_offset; rproc_virtio_reset()
212 struct rproc_vdev *rvdev = vdev_to_rvdev(vdev); rproc_virtio_get_features() local
215 rsc = (void *)rvdev->rproc->table_ptr + rvdev->rsc_offset; rproc_virtio_get_features()
222 struct rproc_vdev *rvdev = vdev_to_rvdev(vdev); rproc_virtio_finalize_features() local
225 rsc = (void *)rvdev->rproc->table_ptr + rvdev->rsc_offset; rproc_virtio_finalize_features()
245 struct rproc_vdev *rvdev = vdev_to_rvdev(vdev); rproc_virtio_get() local
249 rsc = (void *)rvdev->rproc->table_ptr + rvdev->rsc_offset; rproc_virtio_get()
263 struct rproc_vdev *rvdev = vdev_to_rvdev(vdev); rproc_virtio_set() local
267 rsc = (void *)rvdev->rproc->table_ptr + rvdev->rsc_offset; rproc_virtio_set()
301 struct rproc_vdev *rvdev = vdev_to_rvdev(vdev); rproc_vdev_release() local
304 list_del(&rvdev->node); rproc_vdev_release()
305 kfree(rvdev); rproc_vdev_release()
312 * @rvdev: the remote vdev
319 int rproc_add_virtio_dev(struct rproc_vdev *rvdev, int id) rproc_add_virtio_dev() argument
321 struct rproc *rproc = rvdev->rproc; rproc_add_virtio_dev()
323 struct virtio_device *vdev = &rvdev->vdev; rproc_add_virtio_dev()
356 * @rvdev: the remote vdev
360 void rproc_remove_virtio_dev(struct rproc_vdev *rvdev) rproc_remove_virtio_dev() argument
362 unregister_virtio_device(&rvdev->vdev); rproc_remove_virtio_dev()
H A Dremoteproc_internal.h53 int rproc_add_virtio_dev(struct rproc_vdev *rvdev, int id);
54 void rproc_remove_virtio_dev(struct rproc_vdev *rvdev);
66 int rproc_alloc_vring(struct rproc_vdev *rvdev, int i);
H A Dremoteproc_core.c181 int rproc_alloc_vring(struct rproc_vdev *rvdev, int i) rproc_alloc_vring() argument
183 struct rproc *rproc = rvdev->rproc; rproc_alloc_vring()
185 struct rproc_vring *rvring = &rvdev->vring[i]; rproc_alloc_vring()
206 * TODO: assign a notifyid for rvdev updates as well rproc_alloc_vring()
230 rsc = (void *)rproc->table_ptr + rvdev->rsc_offset; rproc_alloc_vring()
237 rproc_parse_vring(struct rproc_vdev *rvdev, struct fw_rsc_vdev *rsc, int i) rproc_parse_vring() argument
239 struct rproc *rproc = rvdev->rproc; rproc_parse_vring()
242 struct rproc_vring *rvring = &rvdev->vring[i]; rproc_parse_vring()
262 rvring->rvdev = rvdev; rproc_parse_vring()
270 struct rproc *rproc = rvring->rvdev->rproc; rproc_free_vring()
271 int idx = rvring->rvdev->vring - rvring; rproc_free_vring()
278 rsc = (void *)rproc->table_ptr + rvring->rvdev->rsc_offset; rproc_free_vring()
314 struct rproc_vdev *rvdev; rproc_handle_vdev() local
333 /* we currently support only two vrings per rvdev */ rproc_handle_vdev()
334 if (rsc->num_of_vrings > ARRAY_SIZE(rvdev->vring)) { rproc_handle_vdev()
339 rvdev = kzalloc(sizeof(struct rproc_vdev), GFP_KERNEL); rproc_handle_vdev()
340 if (!rvdev) rproc_handle_vdev()
343 rvdev->rproc = rproc; rproc_handle_vdev()
347 ret = rproc_parse_vring(rvdev, rsc, i); rproc_handle_vdev()
353 rvdev->rsc_offset = offset; rproc_handle_vdev()
355 list_add_tail(&rvdev->node, &rproc->rvdevs); rproc_handle_vdev()
358 ret = rproc_add_virtio_dev(rvdev, rsc->id); rproc_handle_vdev()
365 list_del(&rvdev->node); rproc_handle_vdev()
367 kfree(rvdev); rproc_handle_vdev()
965 struct rproc_vdev *rvdev, *rvtmp; rproc_trigger_recovery() local
972 list_for_each_entry_safe(rvdev, rvtmp, &rproc->rvdevs, node) rproc_trigger_recovery()
973 rproc_remove_virtio_dev(rvdev); rproc_trigger_recovery()
1357 struct rproc_vdev *rvdev, *tmp; rproc_del() local
1366 list_for_each_entry_safe(rvdev, tmp, &rproc->rvdevs, node) rproc_del()
1367 rproc_remove_virtio_dev(rvdev); rproc_del()
/linux-4.1.27/include/linux/
H A Dremoteproc.h442 /* we currently support only two vrings per rvdev */
454 * @rvdev: remote vdev
464 struct rproc_vdev *rvdev; member in struct:rproc_vring
502 struct rproc_vdev *rvdev = vdev_to_rvdev(vdev); vdev_to_rproc() local
504 return rvdev->rproc; vdev_to_rproc()

Completed in 74 milliseconds