rvdev 317 drivers/remoteproc/remoteproc_core.c int rproc_alloc_vring(struct rproc_vdev *rvdev, int i) rvdev 319 drivers/remoteproc/remoteproc_core.c struct rproc *rproc = rvdev->rproc; rvdev 321 drivers/remoteproc/remoteproc_core.c struct rproc_vring *rvring = &rvdev->vring[i]; rvdev 329 drivers/remoteproc/remoteproc_core.c rsc = (void *)rproc->table_ptr + rvdev->rsc_offset; rvdev 332 drivers/remoteproc/remoteproc_core.c mem = rproc_find_carveout_by_name(rproc, "vdev%dvring%d", rvdev->index, rvdev 343 drivers/remoteproc/remoteproc_core.c rvdev->index, i); rvdev 376 drivers/remoteproc/remoteproc_core.c rproc_parse_vring(struct rproc_vdev *rvdev, struct fw_rsc_vdev *rsc, int i) rvdev 378 drivers/remoteproc/remoteproc_core.c struct rproc *rproc = rvdev->rproc; rvdev 381 drivers/remoteproc/remoteproc_core.c struct rproc_vring *rvring = &rvdev->vring[i]; rvdev 395 drivers/remoteproc/remoteproc_core.c rvring->rvdev = rvdev; rvdev 402 drivers/remoteproc/remoteproc_core.c struct rproc *rproc = rvring->rvdev->rproc; rvdev 403 drivers/remoteproc/remoteproc_core.c int idx = rvring - rvring->rvdev->vring; rvdev 409 drivers/remoteproc/remoteproc_core.c rsc = (void *)rproc->table_ptr + rvring->rvdev->rsc_offset; rvdev 416 drivers/remoteproc/remoteproc_core.c struct rproc_vdev *rvdev = container_of(subdev, struct rproc_vdev, subdev); rvdev 418 drivers/remoteproc/remoteproc_core.c return rproc_add_virtio_dev(rvdev, rvdev->id); rvdev 423 drivers/remoteproc/remoteproc_core.c struct rproc_vdev *rvdev = container_of(subdev, struct rproc_vdev, subdev); rvdev 426 drivers/remoteproc/remoteproc_core.c ret = device_for_each_child(&rvdev->dev, NULL, rproc_remove_virtio_dev); rvdev 428 drivers/remoteproc/remoteproc_core.c dev_warn(&rvdev->dev, "can't remove vdev child device: %d\n", ret); rvdev 438 drivers/remoteproc/remoteproc_core.c struct rproc_vdev *rvdev = container_of(dev, struct rproc_vdev, dev); rvdev 442 drivers/remoteproc/remoteproc_core.c kfree(rvdev); rvdev 476 drivers/remoteproc/remoteproc_core.c struct rproc_vdev *rvdev; rvdev 497 drivers/remoteproc/remoteproc_core.c if (rsc->num_of_vrings > ARRAY_SIZE(rvdev->vring)) { rvdev 502 drivers/remoteproc/remoteproc_core.c rvdev = kzalloc(sizeof(*rvdev), GFP_KERNEL); rvdev 503 drivers/remoteproc/remoteproc_core.c if (!rvdev) rvdev 506 drivers/remoteproc/remoteproc_core.c kref_init(&rvdev->refcount); rvdev 508 drivers/remoteproc/remoteproc_core.c rvdev->id = rsc->id; rvdev 509 drivers/remoteproc/remoteproc_core.c rvdev->rproc = rproc; rvdev 510 drivers/remoteproc/remoteproc_core.c rvdev->index = rproc->nb_vdev++; rvdev 513 drivers/remoteproc/remoteproc_core.c snprintf(name, sizeof(name), "vdev%dbuffer", rvdev->index); rvdev 514 drivers/remoteproc/remoteproc_core.c rvdev->dev.parent = &rproc->dev; rvdev 515 drivers/remoteproc/remoteproc_core.c rvdev->dev.dma_pfn_offset = rproc->dev.parent->dma_pfn_offset; rvdev 516 drivers/remoteproc/remoteproc_core.c rvdev->dev.release = rproc_rvdev_release; rvdev 517 drivers/remoteproc/remoteproc_core.c dev_set_name(&rvdev->dev, "%s#%s", dev_name(rvdev->dev.parent), name); rvdev 518 drivers/remoteproc/remoteproc_core.c dev_set_drvdata(&rvdev->dev, rvdev); rvdev 520 drivers/remoteproc/remoteproc_core.c ret = device_register(&rvdev->dev); rvdev 522 drivers/remoteproc/remoteproc_core.c put_device(&rvdev->dev); rvdev 526 drivers/remoteproc/remoteproc_core.c set_dma_ops(&rvdev->dev, get_dma_ops(rproc->dev.parent)); rvdev 528 drivers/remoteproc/remoteproc_core.c ret = dma_coerce_mask_and_coherent(&rvdev->dev, rvdev 538 drivers/remoteproc/remoteproc_core.c ret = rproc_parse_vring(rvdev, rsc, i); rvdev 544 drivers/remoteproc/remoteproc_core.c rvdev->rsc_offset = offset; rvdev 548 drivers/remoteproc/remoteproc_core.c ret = rproc_alloc_vring(rvdev, i); rvdev 553 drivers/remoteproc/remoteproc_core.c list_add_tail(&rvdev->node, &rproc->rvdevs); rvdev 555 drivers/remoteproc/remoteproc_core.c rvdev->subdev.start = rproc_vdev_do_start; rvdev 556 drivers/remoteproc/remoteproc_core.c rvdev->subdev.stop = rproc_vdev_do_stop; rvdev 558 drivers/remoteproc/remoteproc_core.c rproc_add_subdev(rproc, &rvdev->subdev); rvdev 564 drivers/remoteproc/remoteproc_core.c rproc_free_vring(&rvdev->vring[i]); rvdev 566 drivers/remoteproc/remoteproc_core.c device_unregister(&rvdev->dev); rvdev 572 drivers/remoteproc/remoteproc_core.c struct rproc_vdev *rvdev = container_of(ref, struct rproc_vdev, refcount); rvdev 574 drivers/remoteproc/remoteproc_core.c struct rproc *rproc = rvdev->rproc; rvdev 577 drivers/remoteproc/remoteproc_core.c for (id = 0; id < ARRAY_SIZE(rvdev->vring); id++) { rvdev 578 drivers/remoteproc/remoteproc_core.c rvring = &rvdev->vring[id]; rvdev 582 drivers/remoteproc/remoteproc_core.c rproc_remove_subdev(rproc, &rvdev->subdev); rvdev 583 drivers/remoteproc/remoteproc_core.c list_del(&rvdev->node); rvdev 584 drivers/remoteproc/remoteproc_core.c device_unregister(&rvdev->dev); rvdev 1256 drivers/remoteproc/remoteproc_core.c struct rproc_vdev *rvdev, *rvtmp; rvdev 1291 drivers/remoteproc/remoteproc_core.c list_for_each_entry_safe(rvdev, rvtmp, &rproc->rvdevs, node) rvdev 1292 drivers/remoteproc/remoteproc_core.c kref_put(&rvdev->refcount, rproc_vdev_release); rvdev 33 drivers/remoteproc/remoteproc_internal.h int rproc_add_virtio_dev(struct rproc_vdev *rvdev, int id); rvdev 51 drivers/remoteproc/remoteproc_internal.h int rproc_alloc_vring(struct rproc_vdev *rvdev, int i); rvdev 30 drivers/remoteproc/remoteproc_virtio.c struct rproc *rproc = rvring->rvdev->rproc; rvdev 70 drivers/remoteproc/remoteproc_virtio.c struct rproc_vdev *rvdev = vdev_to_rvdev(vdev); rvdev 81 drivers/remoteproc/remoteproc_virtio.c if (id >= ARRAY_SIZE(rvdev->vring)) rvdev 88 drivers/remoteproc/remoteproc_virtio.c mem = rproc_find_carveout_by_name(rproc, "vdev%dvring%d", rvdev->index, rvdev 93 drivers/remoteproc/remoteproc_virtio.c rvring = &rvdev->vring[id]; rvdev 120 drivers/remoteproc/remoteproc_virtio.c rsc = (void *)rproc->table_ptr + rvdev->rsc_offset; rvdev 175 drivers/remoteproc/remoteproc_virtio.c struct rproc_vdev *rvdev = vdev_to_rvdev(vdev); rvdev 178 drivers/remoteproc/remoteproc_virtio.c rsc = (void *)rvdev->rproc->table_ptr + rvdev->rsc_offset; rvdev 185 drivers/remoteproc/remoteproc_virtio.c struct rproc_vdev *rvdev = vdev_to_rvdev(vdev); rvdev 188 drivers/remoteproc/remoteproc_virtio.c rsc = (void *)rvdev->rproc->table_ptr + rvdev->rsc_offset; rvdev 196 drivers/remoteproc/remoteproc_virtio.c struct rproc_vdev *rvdev = vdev_to_rvdev(vdev); rvdev 199 drivers/remoteproc/remoteproc_virtio.c rsc = (void *)rvdev->rproc->table_ptr + rvdev->rsc_offset; rvdev 208 drivers/remoteproc/remoteproc_virtio.c struct rproc_vdev *rvdev = vdev_to_rvdev(vdev); rvdev 211 drivers/remoteproc/remoteproc_virtio.c rsc = (void *)rvdev->rproc->table_ptr + rvdev->rsc_offset; rvdev 228 drivers/remoteproc/remoteproc_virtio.c struct rproc_vdev *rvdev = vdev_to_rvdev(vdev); rvdev 231 drivers/remoteproc/remoteproc_virtio.c rsc = (void *)rvdev->rproc->table_ptr + rvdev->rsc_offset; rvdev 254 drivers/remoteproc/remoteproc_virtio.c struct rproc_vdev *rvdev = vdev_to_rvdev(vdev); rvdev 258 drivers/remoteproc/remoteproc_virtio.c rsc = (void *)rvdev->rproc->table_ptr + rvdev->rsc_offset; rvdev 272 drivers/remoteproc/remoteproc_virtio.c struct rproc_vdev *rvdev = vdev_to_rvdev(vdev); rvdev 276 drivers/remoteproc/remoteproc_virtio.c rsc = (void *)rvdev->rproc->table_ptr + rvdev->rsc_offset; rvdev 310 drivers/remoteproc/remoteproc_virtio.c struct rproc_vdev *rvdev = vdev_to_rvdev(vdev); rvdev 315 drivers/remoteproc/remoteproc_virtio.c kref_put(&rvdev->refcount, rproc_vdev_release); rvdev 329 drivers/remoteproc/remoteproc_virtio.c int rproc_add_virtio_dev(struct rproc_vdev *rvdev, int id) rvdev 331 drivers/remoteproc/remoteproc_virtio.c struct rproc *rproc = rvdev->rproc; rvdev 332 drivers/remoteproc/remoteproc_virtio.c struct device *dev = &rvdev->dev; rvdev 345 drivers/remoteproc/remoteproc_virtio.c mem = rproc_find_carveout_by_name(rproc, "vdev%dbuffer", rvdev->index); rvdev 362 drivers/remoteproc/remoteproc_virtio.c rvdev->index); rvdev 414 drivers/remoteproc/remoteproc_virtio.c kref_get(&rvdev->refcount); rvdev 557 include/linux/remoteproc.h struct rproc_vdev *rvdev; rvdev 629 include/linux/remoteproc.h struct rproc_vdev *rvdev = vdev_to_rvdev(vdev); rvdev 631 include/linux/remoteproc.h return rvdev->rproc;