On Wed, Feb 27, 2019 at 05:32:56PM -0800, José Roberto de Souza wrote: > In any commit, intel_modeset_pipe_config() will initialilly clear > and then recalculate most of the pipe states but it leave intel > specific color features states in reset state. > > If after intel_pipe_config_compare() is detected that a fastset is > possible it will mark update_pipe as true and unsed mode_changed, > causing the color features state to be kept in reset state and then > latter being committed to hardware disabling the color features. > > This issue can be reproduced by any code patch that duplicates the > actual(with color features already enabled) state and only mark > mode_changed as true. > > Cc: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx> > Cc: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx> > Signed-off-by: José Roberto de Souza <jose.souza@xxxxxxxxx> Reviewed-by: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx> > --- > drivers/gpu/drm/i915/intel_display.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c > index 7c5e84ef5171..816e8f124b3b 100644 > --- a/drivers/gpu/drm/i915/intel_display.c > +++ b/drivers/gpu/drm/i915/intel_display.c > @@ -11232,7 +11232,8 @@ static int intel_crtc_atomic_check(struct drm_crtc *crtc, > return ret; > } > > - if (mode_changed || crtc_state->color_mgmt_changed) { > + if (mode_changed || pipe_config->update_pipe || > + crtc_state->color_mgmt_changed) { > ret = intel_color_check(pipe_config); > if (ret) > return ret; > -- > 2.21.0 -- Ville Syrjälä Intel _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx