msm: vidc: Use Dcvs only when there is no resolution change
When driver detects that there is a dynamic resolution change mid-stream it will not activate dcvs. CRs-Fixed: 1007339 Change-Id: Ia5e5b42598b7e32360267e42665a5ce3880aaeee Signed-off-by: Rohit Kulkarni <rkulkarn@codeaurora.org>
This commit is contained in:
parent
35daa2f018
commit
b0b1581fc1
3 changed files with 5 additions and 1 deletions
|
@ -1174,6 +1174,8 @@ static void handle_event_change(enum hal_command_response cmd, void *data)
|
||||||
inst->prop.width[OUTPUT_PORT] = event_notify->width;
|
inst->prop.width[OUTPUT_PORT] = event_notify->width;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
inst->seqchanged_count++;
|
||||||
|
|
||||||
if (inst->session_type == MSM_VIDC_DECODER)
|
if (inst->session_type == MSM_VIDC_DECODER)
|
||||||
msm_dcvs_init_load(inst);
|
msm_dcvs_init_load(inst);
|
||||||
|
|
||||||
|
|
|
@ -619,7 +619,8 @@ static bool msm_dcvs_check_supported(struct msm_vidc_inst *inst)
|
||||||
if (!is_codec_supported ||
|
if (!is_codec_supported ||
|
||||||
!IS_VALID_DCVS_SESSION(num_mbs_per_frame,
|
!IS_VALID_DCVS_SESSION(num_mbs_per_frame,
|
||||||
res->dcvs_limit[inst->session_type].min_mbpf) ||
|
res->dcvs_limit[inst->session_type].min_mbpf) ||
|
||||||
!IS_VALID_DCVS_SESSION(instance_load, dcvs_limit))
|
!IS_VALID_DCVS_SESSION(instance_load, dcvs_limit) ||
|
||||||
|
inst->seqchanged_count > 1)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
if (!output_buf_req) {
|
if (!output_buf_req) {
|
||||||
|
|
|
@ -274,6 +274,7 @@ struct msm_vidc_inst {
|
||||||
bool in_reconfig;
|
bool in_reconfig;
|
||||||
u32 reconfig_width;
|
u32 reconfig_width;
|
||||||
u32 reconfig_height;
|
u32 reconfig_height;
|
||||||
|
u32 seqchanged_count;
|
||||||
struct dentry *debugfs_root;
|
struct dentry *debugfs_root;
|
||||||
void *priv;
|
void *priv;
|
||||||
struct msm_vidc_debug debug;
|
struct msm_vidc_debug debug;
|
||||||
|
|
Loading…
Add table
Reference in a new issue