Merge "disp: msm: sde: force revalidation of LTM and RC features"

This commit is contained in:
qctecmdr
2023-12-10 04:51:01 -08:00
committed by Gerrit - the friendly Code Review server

View File

@@ -2121,6 +2121,7 @@ int sde_cp_crtc_check_properties(struct drm_crtc *crtc,
{ {
struct sde_crtc *sde_crtc = NULL; struct sde_crtc *sde_crtc = NULL;
struct sde_crtc_state *sde_crtc_state = NULL; struct sde_crtc_state *sde_crtc_state = NULL;
struct drm_display_mode *old_mode, *new_mode;
int i, ret = 0; int i, ret = 0;
if (!crtc || !crtc->dev || !state) { if (!crtc || !crtc->dev || !state) {
@@ -2141,8 +2142,11 @@ int sde_cp_crtc_check_properties(struct drm_crtc *crtc,
return -EINVAL; return -EINVAL;
} }
/* force revalidation of some properties when there is a mode switch */ /* force revalidation of some properties when there is a resolution switch */
if (state->mode_changed) old_mode = &crtc->state->adjusted_mode;
new_mode = &state->adjusted_mode;
if ((old_mode->hdisplay != new_mode->hdisplay) ||
(old_mode->vdisplay != new_mode->vdisplay))
sde_cp_crtc_res_change(crtc); sde_cp_crtc_res_change(crtc);
mutex_lock(&sde_crtc->crtc_cp_lock); mutex_lock(&sde_crtc->crtc_cp_lock);