Lines Matching refs:rpdev

104 	struct rpmsg_device rpdev;  member
110 container_of(_rpdev, struct virtio_rpmsg_channel, rpdev)
210 struct rpmsg_device *rpdev, in __rpmsg_create_ept() argument
216 struct device *dev = rpdev ? &rpdev->dev : &vrp->vdev->dev; in __rpmsg_create_ept()
225 ept->rpdev = rpdev; in __rpmsg_create_ept()
259 static struct rpmsg_device *virtio_rpmsg_create_channel(struct rpmsg_device *rpdev, in virtio_rpmsg_create_channel() argument
262 struct virtio_rpmsg_channel *vch = to_virtio_rpmsg_channel(rpdev); in virtio_rpmsg_create_channel()
268 static int virtio_rpmsg_release_channel(struct rpmsg_device *rpdev, in virtio_rpmsg_release_channel() argument
271 struct virtio_rpmsg_channel *vch = to_virtio_rpmsg_channel(rpdev); in virtio_rpmsg_release_channel()
277 static struct rpmsg_endpoint *virtio_rpmsg_create_ept(struct rpmsg_device *rpdev, in virtio_rpmsg_create_ept() argument
282 struct virtio_rpmsg_channel *vch = to_virtio_rpmsg_channel(rpdev); in virtio_rpmsg_create_ept()
284 return __rpmsg_create_ept(vch->vrp, rpdev, cb, priv, chinfo.src); in virtio_rpmsg_create_ept()
315 struct virtio_rpmsg_channel *vch = to_virtio_rpmsg_channel(ept->rpdev); in virtio_rpmsg_destroy_ept()
320 static int virtio_rpmsg_announce_create(struct rpmsg_device *rpdev) in virtio_rpmsg_announce_create() argument
322 struct virtio_rpmsg_channel *vch = to_virtio_rpmsg_channel(rpdev); in virtio_rpmsg_announce_create()
324 struct device *dev = &rpdev->dev; in virtio_rpmsg_announce_create()
328 if (rpdev->announce && rpdev->ept && in virtio_rpmsg_announce_create()
332 strncpy(nsm.name, rpdev->id.name, RPMSG_NAME_SIZE); in virtio_rpmsg_announce_create()
333 nsm.addr = cpu_to_rpmsg32(rpdev, rpdev->ept->addr); in virtio_rpmsg_announce_create()
334 nsm.flags = cpu_to_rpmsg32(rpdev, RPMSG_NS_CREATE); in virtio_rpmsg_announce_create()
336 err = rpmsg_sendto(rpdev->ept, &nsm, sizeof(nsm), RPMSG_NS_ADDR); in virtio_rpmsg_announce_create()
344 static int virtio_rpmsg_announce_destroy(struct rpmsg_device *rpdev) in virtio_rpmsg_announce_destroy() argument
346 struct virtio_rpmsg_channel *vch = to_virtio_rpmsg_channel(rpdev); in virtio_rpmsg_announce_destroy()
348 struct device *dev = &rpdev->dev; in virtio_rpmsg_announce_destroy()
352 if (rpdev->announce && rpdev->ept && in virtio_rpmsg_announce_destroy()
356 strncpy(nsm.name, rpdev->id.name, RPMSG_NAME_SIZE); in virtio_rpmsg_announce_destroy()
357 nsm.addr = cpu_to_rpmsg32(rpdev, rpdev->ept->addr); in virtio_rpmsg_announce_destroy()
358 nsm.flags = cpu_to_rpmsg32(rpdev, RPMSG_NS_DESTROY); in virtio_rpmsg_announce_destroy()
360 err = rpmsg_sendto(rpdev->ept, &nsm, sizeof(nsm), RPMSG_NS_ADDR); in virtio_rpmsg_announce_destroy()
378 struct rpmsg_device *rpdev = to_rpmsg_device(dev); in virtio_rpmsg_release_device() local
379 struct virtio_rpmsg_channel *vch = to_virtio_rpmsg_channel(rpdev); in virtio_rpmsg_release_device()
393 struct rpmsg_device *rpdev; in __rpmsg_create_channel() local
415 rpdev = &vch->rpdev; in __rpmsg_create_channel()
416 rpdev->src = chinfo->src; in __rpmsg_create_channel()
417 rpdev->dst = chinfo->dst; in __rpmsg_create_channel()
418 rpdev->ops = &virtio_rpmsg_ops; in __rpmsg_create_channel()
419 rpdev->little_endian = virtio_is_little_endian(vrp->vdev); in __rpmsg_create_channel()
425 rpdev->announce = rpdev->src != RPMSG_ADDR_ANY; in __rpmsg_create_channel()
427 strncpy(rpdev->id.name, chinfo->name, RPMSG_NAME_SIZE); in __rpmsg_create_channel()
429 rpdev->dev.parent = &vrp->vdev->dev; in __rpmsg_create_channel()
430 rpdev->dev.release = virtio_rpmsg_release_device; in __rpmsg_create_channel()
431 ret = rpmsg_register_device(rpdev); in __rpmsg_create_channel()
435 return rpdev; in __rpmsg_create_channel()
552 static int rpmsg_send_offchannel_raw(struct rpmsg_device *rpdev, in rpmsg_send_offchannel_raw() argument
556 struct virtio_rpmsg_channel *vch = to_virtio_rpmsg_channel(rpdev); in rpmsg_send_offchannel_raw()
558 struct device *dev = &rpdev->dev; in rpmsg_send_offchannel_raw()
613 msg->len = cpu_to_rpmsg16(rpdev, len); in rpmsg_send_offchannel_raw()
615 msg->src = cpu_to_rpmsg32(rpdev, src); in rpmsg_send_offchannel_raw()
616 msg->dst = cpu_to_rpmsg32(rpdev, dst); in rpmsg_send_offchannel_raw()
652 struct rpmsg_device *rpdev = ept->rpdev; in virtio_rpmsg_send() local
653 u32 src = ept->addr, dst = rpdev->dst; in virtio_rpmsg_send()
655 return rpmsg_send_offchannel_raw(rpdev, src, dst, data, len, true); in virtio_rpmsg_send()
661 struct rpmsg_device *rpdev = ept->rpdev; in virtio_rpmsg_sendto() local
664 return rpmsg_send_offchannel_raw(rpdev, src, dst, data, len, true); in virtio_rpmsg_sendto()
670 struct rpmsg_device *rpdev = ept->rpdev; in virtio_rpmsg_send_offchannel() local
672 return rpmsg_send_offchannel_raw(rpdev, src, dst, data, len, true); in virtio_rpmsg_send_offchannel()
677 struct rpmsg_device *rpdev = ept->rpdev; in virtio_rpmsg_trysend() local
678 u32 src = ept->addr, dst = rpdev->dst; in virtio_rpmsg_trysend()
680 return rpmsg_send_offchannel_raw(rpdev, src, dst, data, len, false); in virtio_rpmsg_trysend()
686 struct rpmsg_device *rpdev = ept->rpdev; in virtio_rpmsg_trysendto() local
689 return rpmsg_send_offchannel_raw(rpdev, src, dst, data, len, false); in virtio_rpmsg_trysendto()
695 struct rpmsg_device *rpdev = ept->rpdev; in virtio_rpmsg_trysend_offchannel() local
697 return rpmsg_send_offchannel_raw(rpdev, src, dst, data, len, false); in virtio_rpmsg_trysend_offchannel()
702 struct rpmsg_device *rpdev = ept->rpdev; in virtio_rpmsg_get_mtu() local
703 struct virtio_rpmsg_channel *vch = to_virtio_rpmsg_channel(rpdev); in virtio_rpmsg_get_mtu()
753 ept->cb(ept->rpdev, msg->data, msg_len, ept->priv, in rpmsg_recv_single()
845 rpdev_ctrl = &vch->rpdev; in rpmsg_virtio_add_ctrl_dev()
967 rpdev_ns = &vch->rpdev; in rpmsg_probe()