From: Ville Syrjälä <[email protected]>

Read out the clear color as soon as fences and the transient
data flush have finished. There is no need to wait for
all the display specific operations that might still be
going on. This could parallelize things a bit more effectively.

Reviewed-by: Animesh Manna <[email protected]>
Signed-off-by: Ville Syrjälä <[email protected]>
---
 drivers/gpu/drm/i915/display/intel_display.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/i915/display/intel_display.c 
b/drivers/gpu/drm/i915/display/intel_display.c
index f7667931f9d9..283e0214c4a3 100644
--- a/drivers/gpu/drm/i915/display/intel_display.c
+++ b/drivers/gpu/drm/i915/display/intel_display.c
@@ -7385,6 +7385,8 @@ static void intel_atomic_commit_tail(struct 
intel_atomic_state *state)
 
        intel_td_flush(dev_priv);
 
+       intel_atomic_prepare_plane_clear_colors(state);
+
        drm_atomic_helper_wait_for_dependencies(&state->base);
        drm_dp_mst_atomic_wait_for_dependencies(&state->base);
        intel_atomic_global_state_wait_for_dependencies(state);
@@ -7418,8 +7420,6 @@ static void intel_atomic_commit_tail(struct 
intel_atomic_state *state)
         */
        wakeref = intel_display_power_get(dev_priv, POWER_DOMAIN_DC_OFF);
 
-       intel_atomic_prepare_plane_clear_colors(state);
-
        for_each_oldnew_intel_crtc_in_state(state, crtc, old_crtc_state,
                                            new_crtc_state, i) {
                if (intel_crtc_needs_modeset(new_crtc_state) ||
-- 
2.45.2

Reply via email to