• Archit Taneja's avatar
    [media] v4l: ti-vpe: Make sure in job_ready that we have the needed number of dst_bufs · db476163
    Archit Taneja authored
    VPE has a ctrl parameter which decides how many mem to mem transactions the
    active job from the job queue can perform.
    
    The driver's job_ready() made sure that the number of ready source buffers are
    sufficient for the job to execute successfully. But it didn't make sure if
    there are sufficient ready destination buffers in the capture queue for the
    VPE output.
    
    If the time taken by VPE to process a single frame is really slow, then it's
    possible that we don't need to imply such a restriction on the dst queue, but
    really fast transactions(small resolution, no de-interlacing) may cause us to
    hit the condition where we don't have any free buffers for the VPE to write on.
    
    Add the extra check in job_ready() to make sure we have the sufficient amount
    of destination buffers.
    Acked-by: default avatarKamil Debski <k.debski@samsung.com>
    Signed-off-by: default avatarArchit Taneja <archit@ti.com>
    Signed-off-by: default avatarMauro Carvalho Chehab <m.chehab@samsung.com>
    db476163
vpe.c 55.2 KB