diff options
-rw-r--r-- | v4l2-mfc-example/drm.c | 2 | ||||
-rw-r--r-- | v4l2-mfc-example/ipp.c | 6 |
2 files changed, 3 insertions, 5 deletions
diff --git a/v4l2-mfc-example/drm.c b/v4l2-mfc-example/drm.c index c04595d..35fad03 100644 --- a/v4l2-mfc-example/drm.c +++ b/v4l2-mfc-example/drm.c @@ -246,8 +246,8 @@ int drm_open(struct instance *i) */ void drm_close(struct instance *i) { - drmClose(i->drm.fd); exynos_drm_ipp_close(i); + drmClose(i->drm.fd); } /* * Requise instance to get drm file descriptor and put data to struct diff --git a/v4l2-mfc-example/ipp.c b/v4l2-mfc-example/ipp.c index 3203f39..048697c 100644 --- a/v4l2-mfc-example/ipp.c +++ b/v4l2-mfc-example/ipp.c @@ -221,14 +221,12 @@ void exynos_drm_ipp_close(struct instance *inst) gem_close.handle = inst->drm.gem_src[i].handle; exynos_gem_close(inst->drm.fd, &gem_close); } - for (i = 0; i < DRM_IPP_MAX_BUF; ++i) - exynos_drm_ipp_do_buffer(i, IPP_BUF_DEQUEUE, EXYNOS_DRM_OPS_DST,inst); for (i = 0; i < MAX_BUFS; ++i) { - exynos_drm_ipp_do_buffer(i, IPP_BUF_DEQUEUE, EXYNOS_DRM_OPS_DST,inst); gem_close.handle = inst->drm.gem[i].handle; exynos_gem_close(inst->drm.fd, &gem_close); + drmModeRmFB(inst->drm.fd, inst->drm.fb[i]); } - drmModeRmFB(inst->drm.fd, (uint32_t)inst->drm.fb); + dbg("Exynos DRM IPP closed\n"); close(inst->drm.fd); } |