summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMateusz Krawczuk <m.krawczuk@samsung.com>2015-06-19 19:56:26 +0200
committerSylwester Nawrocki <s.nawrocki@samsung.com>2015-07-09 15:55:05 +0200
commit4d19a6d587e0fb1d10d8a87b29163bfa89a3fc01 (patch)
tree09af1a6f795d55594b5a4ab7411c0b93a82a4c05
parent4ee4a3e6e4f99ebe5e19b92a400edf719663b87c (diff)
v4l2-mfc-example: Remove gem close error when app is closing
Dequeue of IPP buffors is no longer need. Signed-off-by: Mateusz Krawczuk <m.krawczuk@samsung.com>
-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);
}