summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--v4l2-mfc-example/drm.c2
-rw-r--r--v4l2-mfc-example/ipp.c6
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);
}