From 4459cd1e4c17a47e8f79ac3b9978d78b76dad529 Mon Sep 17 00:00:00 2001 From: Vedang Nagar Date: Wed, 31 Jan 2024 18:40:38 +0530 Subject: [PATCH] video: driver: do not send resume on output port for encoder HFI_CMD_RESUME is not required on output port for encoder. Add change to skip the same. HFI Doc snippet for reference: * There is no usage of resume command for encoder output port. Change-Id: Ib2f7177f38de4b780c4627c7bdb03cbc61a63399 Signed-off-by: Vedang Nagar --- driver/vidc/src/msm_vidc_driver.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/driver/vidc/src/msm_vidc_driver.c b/driver/vidc/src/msm_vidc_driver.c index 23571016d5..d4c9656d82 100644 --- a/driver/vidc/src/msm_vidc_driver.c +++ b/driver/vidc/src/msm_vidc_driver.c @@ -1,7 +1,7 @@ // SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2020-2022, The Linux Foundation. All rights reserved. - * Copyright (c) 2022-2023 Qualcomm Innovation Center, Inc. All rights reserved. + * Copyright (c) 2022-2024 Qualcomm Innovation Center, Inc. All rights reserved. */ #include @@ -1056,7 +1056,8 @@ int msm_vidc_process_resume(struct msm_vidc_inst *inst) return rc; clear_sub_state |= MSM_VIDC_INPUT_PAUSE; } - if (is_sub_state(inst, MSM_VIDC_OUTPUT_PAUSE)) { + if (is_sub_state(inst, MSM_VIDC_OUTPUT_PAUSE) && + !is_encode_session(inst)) { rc = venus_hfi_session_resume(inst, OUTPUT_PORT, HFI_CMD_SETTINGS_CHANGE); if (rc) @@ -1073,7 +1074,8 @@ int msm_vidc_process_resume(struct msm_vidc_inst *inst) return rc; clear_sub_state |= MSM_VIDC_INPUT_PAUSE; } - if (is_sub_state(inst, MSM_VIDC_OUTPUT_PAUSE)) { + if (is_sub_state(inst, MSM_VIDC_OUTPUT_PAUSE) && + !is_encode_session(inst)) { rc = venus_hfi_session_resume(inst, OUTPUT_PORT, HFI_CMD_DRAIN); if (rc) return rc;