diff options
-rw-r--r-- | drivers/staging/media/rockchip/vpu/rockchip_vpu_drv.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/drivers/staging/media/rockchip/vpu/rockchip_vpu_drv.c b/drivers/staging/media/rockchip/vpu/rockchip_vpu_drv.c index 675348a06a39..8bbc905b26c8 100644 --- a/drivers/staging/media/rockchip/vpu/rockchip_vpu_drv.c +++ b/drivers/staging/media/rockchip/vpu/rockchip_vpu_drv.c | |||
@@ -482,10 +482,12 @@ static int rockchip_vpu_probe(struct platform_device *pdev) | |||
482 | return 0; | 482 | return 0; |
483 | err_video_dev_unreg: | 483 | err_video_dev_unreg: |
484 | if (vpu->vfd_enc) { | 484 | if (vpu->vfd_enc) { |
485 | v4l2_m2m_unregister_media_controller(vpu->m2m_dev); | ||
485 | video_unregister_device(vpu->vfd_enc); | 486 | video_unregister_device(vpu->vfd_enc); |
486 | video_device_release(vpu->vfd_enc); | 487 | video_device_release(vpu->vfd_enc); |
487 | } | 488 | } |
488 | err_m2m_rel: | 489 | err_m2m_rel: |
490 | media_device_cleanup(&vpu->mdev); | ||
489 | v4l2_m2m_release(vpu->m2m_dev); | 491 | v4l2_m2m_release(vpu->m2m_dev); |
490 | err_v4l2_unreg: | 492 | err_v4l2_unreg: |
491 | v4l2_device_unregister(&vpu->v4l2_dev); | 493 | v4l2_device_unregister(&vpu->v4l2_dev); |
@@ -503,13 +505,13 @@ static int rockchip_vpu_remove(struct platform_device *pdev) | |||
503 | v4l2_info(&vpu->v4l2_dev, "Removing %s\n", pdev->name); | 505 | v4l2_info(&vpu->v4l2_dev, "Removing %s\n", pdev->name); |
504 | 506 | ||
505 | media_device_unregister(&vpu->mdev); | 507 | media_device_unregister(&vpu->mdev); |
506 | v4l2_m2m_unregister_media_controller(vpu->m2m_dev); | ||
507 | v4l2_m2m_release(vpu->m2m_dev); | ||
508 | media_device_cleanup(&vpu->mdev); | ||
509 | if (vpu->vfd_enc) { | 508 | if (vpu->vfd_enc) { |
509 | v4l2_m2m_unregister_media_controller(vpu->m2m_dev); | ||
510 | video_unregister_device(vpu->vfd_enc); | 510 | video_unregister_device(vpu->vfd_enc); |
511 | video_device_release(vpu->vfd_enc); | 511 | video_device_release(vpu->vfd_enc); |
512 | } | 512 | } |
513 | media_device_cleanup(&vpu->mdev); | ||
514 | v4l2_m2m_release(vpu->m2m_dev); | ||
513 | v4l2_device_unregister(&vpu->v4l2_dev); | 515 | v4l2_device_unregister(&vpu->v4l2_dev); |
514 | clk_bulk_unprepare(vpu->variant->num_clocks, vpu->clocks); | 516 | clk_bulk_unprepare(vpu->variant->num_clocks, vpu->clocks); |
515 | pm_runtime_dont_use_autosuspend(vpu->dev); | 517 | pm_runtime_dont_use_autosuspend(vpu->dev); |