Lines Matching refs:mdp

554 	struct mdp_dev *mdp = video_get_drvdata(vdev);  in mdp_m2m_open()  local
556 struct device *dev = &mdp->pdev->dev; in mdp_m2m_open()
564 if (mutex_lock_interruptible(&mdp->m2m_lock)) { in mdp_m2m_open()
569 ctx->id = ida_alloc(&mdp->mdp_ida, GFP_KERNEL); in mdp_m2m_open()
570 ctx->mdp_dev = mdp; in mdp_m2m_open()
583 ctx->m2m_ctx = v4l2_m2m_ctx_init(mdp->m2m_dev, ctx, mdp_m2m_queue_init); in mdp_m2m_open()
598 mutex_unlock(&mdp->m2m_lock); in mdp_m2m_open()
620 mutex_unlock(&mdp->m2m_lock); in mdp_m2m_open()
630 struct mdp_dev *mdp = video_drvdata(file); in mdp_m2m_release() local
631 struct device *dev = &mdp->pdev->dev; in mdp_m2m_release()
633 mutex_lock(&mdp->m2m_lock); in mdp_m2m_release()
637 mdp_vpu_put_locked(mdp); in mdp_m2m_release()
643 ida_free(&mdp->mdp_ida, ctx->id); in mdp_m2m_release()
644 mutex_unlock(&mdp->m2m_lock); in mdp_m2m_release()
665 int mdp_m2m_device_register(struct mdp_dev *mdp) in mdp_m2m_device_register() argument
667 struct device *dev = &mdp->pdev->dev; in mdp_m2m_device_register()
670 mdp->m2m_vdev = video_device_alloc(); in mdp_m2m_device_register()
671 if (!mdp->m2m_vdev) { in mdp_m2m_device_register()
676 mdp->m2m_vdev->device_caps = V4L2_CAP_VIDEO_M2M_MPLANE | in mdp_m2m_device_register()
678 mdp->m2m_vdev->fops = &mdp_m2m_fops; in mdp_m2m_device_register()
679 mdp->m2m_vdev->ioctl_ops = &mdp_m2m_ioctl_ops; in mdp_m2m_device_register()
680 mdp->m2m_vdev->release = mdp_video_device_release; in mdp_m2m_device_register()
681 mdp->m2m_vdev->lock = &mdp->m2m_lock; in mdp_m2m_device_register()
682 mdp->m2m_vdev->vfl_dir = VFL_DIR_M2M; in mdp_m2m_device_register()
683 mdp->m2m_vdev->v4l2_dev = &mdp->v4l2_dev; in mdp_m2m_device_register()
684 snprintf(mdp->m2m_vdev->name, sizeof(mdp->m2m_vdev->name), "%s:m2m", in mdp_m2m_device_register()
686 video_set_drvdata(mdp->m2m_vdev, mdp); in mdp_m2m_device_register()
688 mdp->m2m_dev = v4l2_m2m_init(&mdp_m2m_ops); in mdp_m2m_device_register()
689 if (IS_ERR(mdp->m2m_dev)) { in mdp_m2m_device_register()
691 ret = PTR_ERR(mdp->m2m_dev); in mdp_m2m_device_register()
695 ret = video_register_device(mdp->m2m_vdev, VFL_TYPE_VIDEO, -1); in mdp_m2m_device_register()
701 v4l2_info(&mdp->v4l2_dev, "Driver registered as /dev/video%d", in mdp_m2m_device_register()
702 mdp->m2m_vdev->num); in mdp_m2m_device_register()
706 v4l2_m2m_release(mdp->m2m_dev); in mdp_m2m_device_register()
708 video_device_release(mdp->m2m_vdev); in mdp_m2m_device_register()
714 void mdp_m2m_device_unregister(struct mdp_dev *mdp) in mdp_m2m_device_unregister() argument
716 video_unregister_device(mdp->m2m_vdev); in mdp_m2m_device_unregister()