Lines Matching refs:rvdev
326 int rproc_alloc_vring(struct rproc_vdev *rvdev, int i)
328 struct rproc *rproc = rvdev->rproc;
330 struct rproc_vring *rvring = &rvdev->vring[i];
339 rsc = (void *)rproc->table_ptr + rvdev->rsc_offset;
342 mem = rproc_find_carveout_by_name(rproc, "vdev%dvring%d", rvdev->index,
354 rvdev->index, i);
365 * TODO: assign a notifyid for rvdev updates as well
387 rproc_parse_vring(struct rproc_vdev *rvdev, struct fw_rsc_vdev *rsc, int i)
389 struct rproc *rproc = rvdev->rproc;
392 struct rproc_vring *rvring = &rvdev->vring[i];
406 rvring->rvdev = rvdev;
413 struct rproc *rproc = rvring->rvdev->rproc;
414 int idx = rvring - rvring->rvdev->vring;
431 rsc = (void *)rproc->table_ptr + rvring->rvdev->rsc_offset;
437 void rproc_add_rvdev(struct rproc *rproc, struct rproc_vdev *rvdev)
439 if (rvdev && rproc)
440 list_add_tail(&rvdev->node, &rproc->rvdevs);
443 void rproc_remove_rvdev(struct rproc_vdev *rvdev)
445 if (rvdev)
446 list_del(&rvdev->node);
481 struct rproc_vdev *rvdev;
502 /* we currently support only two vrings per rvdev */
503 if (rsc->num_of_vrings > ARRAY_SIZE(rvdev->vring)) {
1225 struct rproc_vdev *rvdev, *rvtmp;
1260 list_for_each_entry_safe(rvdev, rvtmp, &rproc->rvdevs, node)
1261 platform_device_unregister(rvdev->pdev);