video: driver: handle same buffer returned from firmware case

Firmware is expected to return the buffer which was earlier
returned with READ_ONLY flag as part of stop command processing.
Amend the condition to avoid returning the same buffer to client
again.

Change-Id: I814098e140bf89b4a4e55dcd5efbff5a9d1cba12
Signed-off-by: Maheshwar Ajja <majja@codeaurora.org>
Esse commit está contido em:
Maheshwar Ajja
2021-02-26 14:10:58 -08:00
commit de Gerrit - the friendly Code Review server
commit 2a92b7d6da

Ver arquivo

@@ -670,11 +670,10 @@ static int handle_dequeue_buffers(struct msm_vidc_inst* inst)
if (buf->attr & MSM_VIDC_ATTR_DEQUEUED) {
buf->attr &= ~MSM_VIDC_ATTR_DEQUEUED;
/*
* do not send vb2_buffer_done when fw sends FBDs
* with read only flag for second time
* do not send vb2_buffer_done when fw returns
* same buffer again
*/
if ((buf->attr & MSM_VIDC_ATTR_BUFFER_DONE) &&
buf->attr & MSM_VIDC_ATTR_READ_ONLY){
if (buf->attr & MSM_VIDC_ATTR_BUFFER_DONE) {
print_vidc_buffer(VIDC_HIGH, "high",
"vb2 done already", inst, buf);
} else {