disp: msm: sde: fix qos perf for 90Hz panel

This change fixes the issue in selecting the correct
perf index for the 90Hz refresh rate, before this change
values corresponding to 60Hz were getting applied for this
refresh rate.

Change-Id: Id4f8af4da95f0d13d30f6316dc26dd65b61d7f79
Signed-off-by: Abhijit Kulkarni <kabhijit@codeaurora.org>
This commit is contained in:
Abhijit Kulkarni
2020-06-17 17:40:19 -07:00
parent 5634bb0af9
commit 0b68037224
2 changed files with 8 additions and 10 deletions

View File

@@ -168,12 +168,11 @@ static void sde_encoder_phys_wb_set_qos(struct sde_encoder_phys *phys_enc)
hw_wb = wb_enc->hw_wb; hw_wb = wb_enc->hw_wb;
qos_count = perf->qos_refresh_count; qos_count = perf->qos_refresh_count;
while (qos_count && perf->qos_refresh_rate) { while ((fps_index < qos_count) && perf->qos_refresh_rate) {
if (frame_rate >= perf->qos_refresh_rate[qos_count - 1]) { if ((frame_rate <= perf->qos_refresh_rate[fps_index]) ||
fps_index = qos_count - 1; (fps_index == qos_count - 1))
break; break;
} fps_index++;
qos_count--;
} }
qos_cfg.danger_safe_en = true; qos_cfg.danger_safe_en = true;

View File

@@ -290,12 +290,11 @@ static void _sde_plane_set_qos_lut(struct drm_plane *plane,
frame_rate = crtc->mode.vrefresh; frame_rate = crtc->mode.vrefresh;
perf = &psde->catalog->perf; perf = &psde->catalog->perf;
qos_count = perf->qos_refresh_count; qos_count = perf->qos_refresh_count;
while (qos_count && perf->qos_refresh_rate) { while ((fps_index < qos_count) && perf->qos_refresh_rate) {
if (frame_rate >= perf->qos_refresh_rate[qos_count - 1]) { if ((frame_rate <= perf->qos_refresh_rate[fps_index]) ||
fps_index = qos_count - 1; (fps_index == qos_count - 1))
break; break;
} fps_index++;
qos_count--;
} }
if (!psde->is_rt_pipe) { if (!psde->is_rt_pipe) {