From 287d898a22755054b545222ef18c0f8073f7fe8a Mon Sep 17 00:00:00 2001 From: Maxime Ripard Date: Fri, 20 Apr 2018 11:06:06 +0200 Subject: [PATCH] picture: Move calls to request reinit from EndPicture to SyncSurface Signed-off-by: Maxime Ripard --- src/picture.c | 3 --- src/surface.c | 3 ++- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/src/picture.c b/src/picture.c index 24de480..e20ae01 100644 --- a/src/picture.c +++ b/src/picture.c @@ -240,8 +240,6 @@ VAStatus sunxi_cedrus_EndPicture(VADriverContextP ctx, VAContextID context) if(ioctl(driver_data->mem2mem_fd, VIDIOC_QBUF, &cap_buf)) { obj_surface->status = VASurfaceSkipped; sunxi_cedrus_msg("Error when queuing output: %s\n", strerror(errno)); - - ioctl(request_fd, MEDIA_REQUEST_IOC_REINIT, NULL); return VA_STATUS_ERROR_UNKNOWN; } @@ -250,7 +248,6 @@ VAStatus sunxi_cedrus_EndPicture(VADriverContextP ctx, VAContextID context) sunxi_cedrus_msg("Error when queuing input: %s\n", strerror(errno)); ioctl(driver_data->mem2mem_fd, VIDIOC_DQBUF, &cap_buf); - ioctl(request_fd, MEDIA_REQUEST_IOC_REINIT, NULL); return VA_STATUS_ERROR_UNKNOWN; } diff --git a/src/surface.c b/src/surface.c index 813cf0c..fb9a464 100644 --- a/src/surface.c +++ b/src/surface.c @@ -191,6 +191,8 @@ VAStatus sunxi_cedrus_SyncSurface(VADriverContextP ctx, if(rc < 0) return VA_STATUS_ERROR_UNKNOWN; + assert(ioctl(request_fd, MEDIA_REQUEST_IOC_REINIT, NULL)==0); + memset(&(buf), 0, sizeof(buf)); buf.type = V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE; buf.memory = V4L2_MEMORY_MMAP; @@ -217,7 +219,6 @@ VAStatus sunxi_cedrus_SyncSurface(VADriverContextP ctx, return VA_STATUS_ERROR_UNKNOWN; } - assert(ioctl(request_fd, MEDIA_REQUEST_IOC_REINIT, NULL)==0); return VA_STATUS_SUCCESS; }