@@ -3222,9 +3222,6 @@ static void intel_update_pipe_config(struct intel_crtc *crtc,
3222
3222
old_crtc_state -> pipe_src_w , old_crtc_state -> pipe_src_h ,
3223
3223
pipe_config -> pipe_src_w , pipe_config -> pipe_src_h );
3224
3224
3225
- if (HAS_DDI (dev ))
3226
- intel_color_set_csc (& pipe_config -> base );
3227
-
3228
3225
/*
3229
3226
* Update pipe size and adjust fitter if needed: the reason for this is
3230
3227
* that in compute_mode_changes we check the native mode (not the pfit
@@ -13591,18 +13588,6 @@ static int intel_atomic_commit(struct drm_device *dev,
13591
13588
dev_priv -> display .crtc_enable (crtc );
13592
13589
}
13593
13590
13594
- if (!modeset &&
13595
- crtc -> state -> active &&
13596
- crtc -> state -> color_mgmt_changed ) {
13597
- /*
13598
- * Only update color management when not doing
13599
- * a modeset as this will be done by
13600
- * crtc_enable already.
13601
- */
13602
- intel_color_set_csc (crtc -> state );
13603
- intel_color_load_luts (crtc -> state );
13604
- }
13605
-
13606
13591
if (!modeset )
13607
13592
intel_pre_plane_update (to_intel_crtc_state (old_crtc_state ));
13608
13593
@@ -13921,6 +13906,11 @@ static void intel_begin_crtc_commit(struct drm_crtc *crtc,
13921
13906
if (modeset )
13922
13907
return ;
13923
13908
13909
+ if (crtc -> state -> color_mgmt_changed || to_intel_crtc_state (crtc -> state )-> update_pipe ) {
13910
+ intel_color_set_csc (crtc -> state );
13911
+ intel_color_load_luts (crtc -> state );
13912
+ }
13913
+
13924
13914
if (to_intel_crtc_state (crtc -> state )-> update_pipe )
13925
13915
intel_update_pipe_config (intel_crtc , old_intel_state );
13926
13916
else if (INTEL_INFO (dev )-> gen >= 9 )
0 commit comments