Merge "video-driver: disable dynamic low latency"
This commit is contained in:
committed by
Gerrit - the friendly Code Review server
commit
7f8fc5be92
@@ -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,
|
||||||
|
|||||||
@@ -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,
|
||||||
|
|||||||
@@ -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)
|
||||||
|
|||||||
@@ -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;
|
|
||||||
}
|
|
||||||
|
|||||||
Reference in New Issue
Block a user