Lines Matching refs:ctrldev
336 static int rpmsg_eptdev_create(struct rpmsg_ctrldev *ctrldev, in rpmsg_eptdev_create() argument
339 struct rpmsg_device *rpdev = ctrldev->rpdev; in rpmsg_eptdev_create()
359 dev->parent = &ctrldev->dev; in rpmsg_eptdev_create()
405 struct rpmsg_ctrldev *ctrldev = cdev_to_ctrldev(inode->i_cdev); in rpmsg_ctrldev_open() local
407 get_device(&ctrldev->dev); in rpmsg_ctrldev_open()
408 filp->private_data = ctrldev; in rpmsg_ctrldev_open()
415 struct rpmsg_ctrldev *ctrldev = cdev_to_ctrldev(inode->i_cdev); in rpmsg_ctrldev_release() local
417 put_device(&ctrldev->dev); in rpmsg_ctrldev_release()
425 struct rpmsg_ctrldev *ctrldev = fp->private_data; in rpmsg_ctrldev_ioctl() local
441 return rpmsg_eptdev_create(ctrldev, chinfo); in rpmsg_ctrldev_ioctl()
454 struct rpmsg_ctrldev *ctrldev = dev_to_ctrldev(dev); in rpmsg_ctrldev_release_device() local
458 cdev_del(&ctrldev->cdev); in rpmsg_ctrldev_release_device()
459 kfree(ctrldev); in rpmsg_ctrldev_release_device()
464 struct rpmsg_ctrldev *ctrldev; in rpmsg_chrdev_probe() local
468 ctrldev = kzalloc(sizeof(*ctrldev), GFP_KERNEL); in rpmsg_chrdev_probe()
469 if (!ctrldev) in rpmsg_chrdev_probe()
472 ctrldev->rpdev = rpdev; in rpmsg_chrdev_probe()
474 dev = &ctrldev->dev; in rpmsg_chrdev_probe()
479 cdev_init(&ctrldev->cdev, &rpmsg_ctrldev_fops); in rpmsg_chrdev_probe()
480 ctrldev->cdev.owner = THIS_MODULE; in rpmsg_chrdev_probe()
491 dev_set_name(&ctrldev->dev, "rpmsg_ctrl%d", ret); in rpmsg_chrdev_probe()
493 ret = cdev_add(&ctrldev->cdev, dev->devt, 1); in rpmsg_chrdev_probe()
506 dev_set_drvdata(&rpdev->dev, ctrldev); in rpmsg_chrdev_probe()
516 kfree(ctrldev); in rpmsg_chrdev_probe()
523 struct rpmsg_ctrldev *ctrldev = dev_get_drvdata(&rpdev->dev); in rpmsg_chrdev_remove() local
527 ret = device_for_each_child(&ctrldev->dev, NULL, rpmsg_eptdev_destroy); in rpmsg_chrdev_remove()
531 device_del(&ctrldev->dev); in rpmsg_chrdev_remove()
532 put_device(&ctrldev->dev); in rpmsg_chrdev_remove()