lkml.org 
[lkml]   [2022]   [Mar]   [31]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] media: hantro: Empty encoder capture buffers by default
On Thu, Mar 31, 2022 at 04:49:06PM +0800, Chen-Yu Tsai wrote:
> The payload size for encoder capture buffers is set by the driver upon
> finishing encoding each frame, based on the encoded length returned from
> hardware, and whatever header and padding length used. Setting a
> non-zero default serves no real purpose, and also causes issues if the
> capture buffer is returned to userspace unused, confusing the
> application.
>
> Instead, always set the payload size to 0 for encoder capture buffers
> when preparing them.
>
> Fixes: 775fec69008d ("media: add Rockchip VPU JPEG encoder driver")
> Fixes: 082aaecff35f ("media: hantro: Fix .buf_prepare")
> Signed-off-by: Chen-Yu Tsai <wenst@chromium.org>

Reviewed-by: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>

> ---
>
> This was previously incorrectly squashed into my Hantro encoder cmd
> patch [1].
>
> [1] https://lore.kernel.org/linux-media/20220301042225.1540019-1-wenst@chromium.org/
>
> drivers/staging/media/hantro/hantro_v4l2.c | 8 ++++++--
> 1 file changed, 6 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/staging/media/hantro/hantro_v4l2.c b/drivers/staging/media/hantro/hantro_v4l2.c
> index 67148ba346f5..261beb0c40f6 100644
> --- a/drivers/staging/media/hantro/hantro_v4l2.c
> +++ b/drivers/staging/media/hantro/hantro_v4l2.c
> @@ -733,8 +733,12 @@ static int hantro_buf_prepare(struct vb2_buffer *vb)
> * (for OUTPUT buffers, if userspace passes 0 bytesused, v4l2-core sets
> * it to buffer length).
> */
> - if (V4L2_TYPE_IS_CAPTURE(vq->type))
> - vb2_set_plane_payload(vb, 0, pix_fmt->plane_fmt[0].sizeimage);
> + if (V4L2_TYPE_IS_CAPTURE(vq->type)) {
> + if (ctx->is_encoder)
> + vb2_set_plane_payload(vb, 0, 0);
> + else
> + vb2_set_plane_payload(vb, 0, pix_fmt->plane_fmt[0].sizeimage);
> + }
>
> return 0;
> }
> --
> 2.35.1.1021.g381101b075-goog
>

\
 
 \ /
  Last update: 2022-03-31 22:16    [W:2.235 / U:0.028 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site