From 4d19a6d587e0fb1d10d8a87b29163bfa89a3fc01 Mon Sep 17 00:00:00 2001 From: Mateusz Krawczuk Date: Fri, 19 Jun 2015 19:56:26 +0200 Subject: v4l2-mfc-example: Remove gem close error when app is closing Dequeue of IPP buffors is no longer need. Signed-off-by: Mateusz Krawczuk --- v4l2-mfc-example/drm.c | 2 +- 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); } -- cgit v1.2.3