Re: [PATCH] venus: vdec: fix decoded data size

From: Nicolas Dufresne
Date: Wed Sep 19 2018 - 11:53:31 EST


Le mercredi 19 septembre 2018 Ã 18:02 +0300, Stanimir Varbanov a
Ãcrit :
> > --- a/drivers/media/platform/qcom/venus/vdec.c
> > +++ b/drivers/media/platform/qcom/venus/vdec.c
> > @@ -943,8 +943,7 @@ static void vdec_buf_done(struct venus_inst
> > *inst,
> > unsigned int buf_type,
> > unsigned int opb_sz =
> > venus_helper_get_opb_size(inst);
> >
> > vb = &vbuf->vb2_buf;
> > - vb->planes[0].bytesused =
> > - max_t(unsigned int, opb_sz, bytesused);
> > + vb2_set_plane_payload(vb, 0, bytesused ? :
> > opb_sz);
> > vb->planes[0].data_offset = data_offset;
> > vb->timestamp = timestamp_us * NSEC_PER_USEC;
> > vbuf->sequence = inst->sequence_cap++;
> >
> > It works fine for me, and should not return 0 more often than it
> > did
> > before (i.e. never). In practice I also never see the firmware
> > reporting a payload of zero on SDM845, but maybe older chips
> > differ?
>
> yes, it looks fine. Let me test it with older versions.

What about removing the allow_zero_bytesused flag on this specific
queue ? Then you can leave it to 0, and the framework will change it to
the buffer size.

Nicolas

Attachment: signature.asc
Description: This is a digitally signed message part