disp: msm: sde: update kickoff timeout for CMD panel

While transition from very low fps (1Hz) to higher fps (120Hz)
there will be a delay on first frame to take effect on
mode switch. In such cases if kickoff_timeout value is programmed
based on newer high fps wr_ptr_timeout can happen. To avoid this
update the kickoff timeout with respect to lower fps and reset
it back according to present fps once the mode switch commit is
done.

Change-Id: I08e1a68bb1e388a1bda8ef61d47e9eb4b2fc97fe
Signed-off-by: Mahadevan <quic_mahap@quicinc.com>
Šī revīzija ir iekļauta:
Mahadevan
2023-10-18 20:21:21 +05:30
vecāks 36710bd6c6
revīzija eb84d660f1
4 mainīti faili ar 27 papildinājumiem un 1 dzēšanām

Parādīt failu

@@ -1726,6 +1726,11 @@ static void sde_kms_wait_for_commit_done(struct msm_kms *kms,
if (cwb_disabling && cwb_enc)
sde_encoder_virt_reset(cwb_enc);
if (drm_atomic_crtc_needs_modeset(crtc->state)) {
drm_for_each_encoder_mask(encoder, crtc->dev, crtc->state->encoder_mask)
sde_encoder_reset_kickoff_timeout_ms(encoder);
}
/* avoid system cache update to set rd-noalloc bit when NSE feature is enabled */
if (!test_bit(SDE_FEATURE_SYS_CACHE_NSE, sde_kms->catalog->features))
sde_crtc_static_cache_read_kickoff(crtc);