Call session_continue for Venus 4xx version even when the event
says that the buffer resources are not sufficient. Leaving a
comment with more information about the workaround.

Signed-off-by: Stanimir Varbanov <stanimir.varba...@linaro.org>
---
 drivers/media/platform/qcom/venus/vdec.c | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/drivers/media/platform/qcom/venus/vdec.c 
b/drivers/media/platform/qcom/venus/vdec.c
index c45452634e7e..91c7384ff9c8 100644
--- a/drivers/media/platform/qcom/venus/vdec.c
+++ b/drivers/media/platform/qcom/venus/vdec.c
@@ -873,6 +873,14 @@ static void vdec_event_notify(struct venus_inst *inst, u32 
event,
 
                        dev_dbg(dev, "event not sufficient resources (%ux%u)\n",
                                data->width, data->height);
+                       /*
+                        * Workaround: Even that the firmware send and event for
+                        * insufficient buffer resources it is safe to call
+                        * session_continue because actually the event says that
+                        * the number of capture buffers is lower.
+                        */
+                       if (IS_V4(core))
+                               hfi_session_continue(inst);
                        break;
                case HFI_EVENT_RELEASE_BUFFER_REFERENCE:
                        venus_helper_release_buf_ref(inst, data->tag);
-- 
2.14.1

Reply via email to