From ea096260e8aff544b0dc9a4fb46f416b2bc98aeb Mon Sep 17 00:00:00 2001 From: Manikanta Kanamarlapudi Date: Sat, 23 Nov 2019 22:42:14 +0530 Subject: [PATCH] msm: vidc: Fix core id value Add definition for decide_core_and_power_mode to fix the core id issue. Wrong core id results in incorrect clock values. CRs-Fixed: 2572953 Change-Id: I2219df71f555fb34a69146821997bab5fa8971a9 Signed-off-by: Manikanta Kanamarlapudi --- msm/vidc/msm_vidc_clocks.c | 9 ++++++++- msm/vidc/msm_vidc_clocks.h | 1 + 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/msm/vidc/msm_vidc_clocks.c b/msm/vidc/msm_vidc_clocks.c index 9ad69717600a..05347934e499 100644 --- a/msm/vidc/msm_vidc_clocks.c +++ b/msm/vidc/msm_vidc_clocks.c @@ -26,7 +26,8 @@ struct msm_vidc_core_ops core_ops_ar50_lt = { .calc_freq = msm_vidc_calc_freq_ar50_lt, .decide_work_route = NULL, .decide_work_mode = msm_vidc_decide_work_mode_ar50_lt, - .decide_core_and_power_mode = NULL, + .decide_core_and_power_mode = + msm_vidc_decide_core_and_power_mode_ar50lt, .calc_bw = NULL, }; @@ -1274,6 +1275,12 @@ static inline int msm_vidc_power_save_mode_enable(struct msm_vidc_inst *inst, return rc; } +int msm_vidc_decide_core_and_power_mode_ar50lt(struct msm_vidc_inst *inst) +{ + inst->clk_data.core_id = VIDC_CORE_ID_1; + return 0; +} + int msm_vidc_decide_core_and_power_mode_iris2(struct msm_vidc_inst *inst) { u32 mbpf, mbps, max_hq_mbpf, max_hq_mbps; diff --git a/msm/vidc/msm_vidc_clocks.h b/msm/vidc/msm_vidc_clocks.h index 7a2be7e613b1..5d649ab9f301 100644 --- a/msm/vidc/msm_vidc_clocks.h +++ b/msm/vidc/msm_vidc_clocks.h @@ -25,6 +25,7 @@ int msm_vidc_decide_work_route_iris1(struct msm_vidc_inst *inst); int msm_vidc_decide_work_mode_iris1(struct msm_vidc_inst *inst); int msm_vidc_decide_work_route_iris2(struct msm_vidc_inst *inst); int msm_vidc_decide_work_mode_iris2(struct msm_vidc_inst *inst); +int msm_vidc_decide_core_and_power_mode_ar50lt(struct msm_vidc_inst *inst); int msm_vidc_decide_core_and_power_mode_iris1(struct msm_vidc_inst *inst); int msm_vidc_decide_core_and_power_mode_iris2(struct msm_vidc_inst *inst); void msm_print_core_status(struct msm_vidc_core *core, u32 core_id, u32 sid);