Merge "video-driver: disable dynamic low latency"

This commit is contained in:
qctecmdr
2022-02-02 14:09:20 -08:00
committed by Gerrit - the friendly Code Review server
4 changed files with 3 additions and 40 deletions

View File

@@ -518,7 +518,7 @@ static struct msm_platform_inst_capability instance_data_waipio[] = {
1, V4L2_MPEG_MSM_VIDC_DISABLE, 1, V4L2_MPEG_MSM_VIDC_DISABLE,
V4L2_CID_MPEG_VIDC_LOWLATENCY_REQUEST, V4L2_CID_MPEG_VIDC_LOWLATENCY_REQUEST,
HFI_PROP_SEQ_CHANGE_AT_SYNC_FRAME, HFI_PROP_SEQ_CHANGE_AT_SYNC_FRAME,
CAP_FLAG_INPUT_PORT | CAP_FLAG_DYNAMIC_ALLOWED}, CAP_FLAG_INPUT_PORT},
{LTR_COUNT, ENC, H264|HEVC, {LTR_COUNT, ENC, H264|HEVC,
0, 2, 1, 0, 0, 2, 1, 0,

View File

@@ -102,7 +102,6 @@ int msm_vidc_set_csc_custom_matrix(void *instance,
enum msm_vidc_inst_capability_type cap_id); enum msm_vidc_inst_capability_type cap_id);
int msm_vidc_set_session_priority(void* instance, int msm_vidc_set_session_priority(void* instance,
enum msm_vidc_inst_capability_type cap_id); enum msm_vidc_inst_capability_type cap_id);
int msm_vidc_set_seq_change_at_sync_frame(void *instance);
int msm_vidc_set_level(void *instance, int msm_vidc_set_level(void *instance,
enum msm_vidc_inst_capability_type cap_id); enum msm_vidc_inst_capability_type cap_id);
int msm_vidc_set_s32(void *instance, int msm_vidc_set_s32(void *instance,

View File

@@ -1,6 +1,6 @@
// SPDX-License-Identifier: GPL-2.0-only // SPDX-License-Identifier: GPL-2.0-only
/* /*
* Copyright (c) 2020-2021, The Linux Foundation. All rights reserved. * Copyright (c) 2020-2022, The Linux Foundation. All rights reserved.
*/ */
#include <media/v4l2_vidc_extensions.h> #include <media/v4l2_vidc_extensions.h>
@@ -997,10 +997,6 @@ static int msm_vdec_set_output_properties(struct msm_vidc_inst *inst)
if (rc) if (rc)
return rc; return rc;
rc = msm_vidc_set_seq_change_at_sync_frame(inst);
if (rc)
return rc;
return rc; return rc;
} }
@@ -2401,10 +2397,6 @@ int msm_vdec_process_cmd(struct msm_vidc_inst *inst, u32 cmd)
msm_vidc_allow_dcvs(inst); msm_vidc_allow_dcvs(inst);
msm_vidc_power_data_reset(inst); msm_vidc_power_data_reset(inst);
rc = msm_vidc_set_seq_change_at_sync_frame(inst);
if (rc)
return rc;
/* allocate and queue extra dpb buffers */ /* allocate and queue extra dpb buffers */
rc = msm_vdec_alloc_and_queue_additional_dpb_buffers(inst); rc = msm_vdec_alloc_and_queue_additional_dpb_buffers(inst);
if (rc) if (rc)

View File

@@ -1,6 +1,6 @@
// SPDX-License-Identifier: GPL-2.0-only // SPDX-License-Identifier: GPL-2.0-only
/* /*
* Copyright (c) 2020-2021, The Linux Foundation. All rights reserved. * Copyright (c) 2020-2022, The Linux Foundation. All rights reserved.
*/ */
#include "msm_vidc_control.h" #include "msm_vidc_control.h"
@@ -961,14 +961,6 @@ int msm_v4l2_op_s_ctrl(struct v4l2_ctrl *ctrl)
goto exit; goto exit;
} }
if (ctrl->id == V4L2_CID_MPEG_VIDC_LOWLATENCY_REQUEST) {
if (ctrl->val == V4L2_MPEG_MSM_VIDC_ENABLE) {
rc = msm_vidc_set_seq_change_at_sync_frame(inst);
if (rc)
return rc;
}
}
exit: exit:
if (rc) if (rc)
msm_vidc_free_capabililty_list(inst, CHILD_LIST | FW_LIST); msm_vidc_free_capabililty_list(inst, CHILD_LIST | FW_LIST);
@@ -3879,23 +3871,3 @@ int msm_vidc_set_pipe(void *instance,
return rc; return rc;
} }
int msm_vidc_set_seq_change_at_sync_frame(void *instance)
{
int rc = 0;
u32 payload;
struct msm_vidc_inst* inst = (struct msm_vidc_inst*)instance;
if (!inst || !inst->capabilities) {
d_vpr_e("%s: invalid params\n", __func__);
return -EINVAL;
}
payload = inst->capabilities->cap[LOWLATENCY_MODE].value;
rc = msm_vidc_packetize_control(inst, LOWLATENCY_MODE, HFI_PAYLOAD_U32,
&payload, sizeof(u32), __func__);
if (rc)
return rc;
return rc;
}