disp: msm: sde: Update UIDLE and QoS LUT when DRM mode is changed
UIDLE and QoS LUT configurationis might be different between different frame rates. Add this change to update UIDLE and QoS LUT according to frame rate when DRM mode is changed. Change-Id: Ia16a963e185b911b7dd11e81a26cab732c2b185c Signed-off-by: Lei Chen <chenlei@codeaurora.org>
This commit is contained in:
@@ -3209,6 +3209,7 @@ static void sde_crtc_atomic_begin(struct drm_crtc *crtc,
|
||||
struct drm_encoder *encoder;
|
||||
struct drm_device *dev;
|
||||
struct sde_kms *sde_kms;
|
||||
struct drm_plane *plane;
|
||||
struct sde_splash_display *splash_display;
|
||||
bool cont_splash_enabled = false, apply_cp_prop = false;
|
||||
size_t i;
|
||||
@@ -3268,6 +3269,15 @@ static void sde_crtc_atomic_begin(struct drm_crtc *crtc,
|
||||
_sde_crtc_blend_setup(crtc, old_state, true);
|
||||
_sde_crtc_dest_scaler_setup(crtc);
|
||||
|
||||
if (old_state->mode_changed) {
|
||||
sde_core_perf_crtc_update_uidle(crtc, true);
|
||||
drm_atomic_crtc_for_each_plane(plane, crtc) {
|
||||
if (plane->state && plane->state->fb)
|
||||
_sde_plane_set_qos_lut(plane, crtc,
|
||||
plane->state->fb);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Since CP properties use AXI buffer to program the
|
||||
* HW, check if context bank is in attached state,
|
||||
|
Reference in New Issue
Block a user