This adds handling of buffers of type OUTPUT2 which is needed to
support Venus 4xx version.

Signed-off-by: Stanimir Varbanov <stanimir.varba...@linaro.org>
---
 drivers/media/platform/qcom/venus/hfi.c      | 3 ++-
 drivers/media/platform/qcom/venus/hfi_msgs.c | 3 ++-
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/drivers/media/platform/qcom/venus/hfi.c 
b/drivers/media/platform/qcom/venus/hfi.c
index cbc6fad05e47..a570fdad0de0 100644
--- a/drivers/media/platform/qcom/venus/hfi.c
+++ b/drivers/media/platform/qcom/venus/hfi.c
@@ -473,7 +473,8 @@ int hfi_session_process_buf(struct venus_inst *inst, struct 
hfi_frame_data *fd)
 
        if (fd->buffer_type == HFI_BUFFER_INPUT)
                return ops->session_etb(inst, fd);
-       else if (fd->buffer_type == HFI_BUFFER_OUTPUT)
+       else if (fd->buffer_type == HFI_BUFFER_OUTPUT ||
+                fd->buffer_type == HFI_BUFFER_OUTPUT2)
                return ops->session_ftb(inst, fd);
 
        return -EINVAL;
diff --git a/drivers/media/platform/qcom/venus/hfi_msgs.c 
b/drivers/media/platform/qcom/venus/hfi_msgs.c
index 5970e9b1716b..023802e62833 100644
--- a/drivers/media/platform/qcom/venus/hfi_msgs.c
+++ b/drivers/media/platform/qcom/venus/hfi_msgs.c
@@ -825,7 +825,8 @@ static void hfi_session_ftb_done(struct venus_core *core,
                error = HFI_ERR_SESSION_INVALID_PARAMETER;
        }
 
-       if (buffer_type != HFI_BUFFER_OUTPUT)
+       if (buffer_type != HFI_BUFFER_OUTPUT &&
+           buffer_type != HFI_BUFFER_OUTPUT2)
                goto done;
 
        if (hfi_flags & HFI_BUFFERFLAG_EOS)
-- 
2.14.1

Reply via email to