diff --git a/driver/variant/iris3/src/msm_vidc_power_iris3.c b/driver/variant/iris3/src/msm_vidc_power_iris3.c index 39626c8321..76dba298a3 100644 --- a/driver/variant/iris3/src/msm_vidc_power_iris3.c +++ b/driver/variant/iris3/src/msm_vidc_power_iris3.c @@ -260,7 +260,7 @@ static u64 __calculate_decoder(struct vidc_bus_vote_data *d) fp_t dpb_read_compression_factor, dpb_opb_scaling_ratio, dpb_write_compression_factor, opb_write_compression_factor, qsmmu_bw_overhead_factor; - bool is_h264_category = true; + bool is_h264_category = (d->codec == MSM_VIDC_H264) ? true : false; /* Derived parameters */ int lcu_per_frame, collocated_bytes_per_lcu, tnbr_per_lcu; @@ -319,13 +319,6 @@ static u64 __calculate_decoder(struct vidc_bus_vote_data *d) num_vpp_pipes = d->num_vpp_pipes; - if (d->codec == MSM_VIDC_HEVC || - d->codec == MSM_VIDC_HEIC || - d->codec == MSM_VIDC_VP9) { - /* H264, VP8, MPEG2 use the same settings */ - /* HEVC, VP9 use the same setting */ - is_h264_category = false; - } if (d->use_sys_cache) { llc_ref_read_l2_cache_enabled = true; if (is_h264_category) diff --git a/driver/vidc/src/msm_vidc_power.c b/driver/vidc/src/msm_vidc_power.c index 7610f1d42f..f9ee45f540 100644 --- a/driver/vidc/src/msm_vidc_power.c +++ b/driver/vidc/src/msm_vidc_power.c @@ -231,6 +231,9 @@ int msm_vidc_scale_buses(struct msm_vidc_inst *inst) vote_data->output_height = out_f->fmt.pix_mp.height; vote_data->lcu_size = (codec == V4L2_PIX_FMT_HEVC || codec == V4L2_PIX_FMT_VP9) ? 32 : 16; + if (codec == V4L2_PIX_FMT_AV1) + vote_data->lcu_size = + inst->capabilities->cap[SUPER_BLOCK].value ? 128 : 64; vote_data->fps = inst->max_rate; if (inst->domain == MSM_VIDC_ENCODER) {