On Mon, 06 Nov 2023, Ville Syrjala <ville.syrjala@xxxxxxxxxxxxxxx> wrote: > From: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx> > > We used to call intel_pre_plane_updates() for any pipe going through > a modeset whether the pipe was previously enabled or not. This in > fact needed to apply all the necessary clock gating workarounds/etc. > Restore the correct behaviour. > > Fixes: 39919997322f ("drm/i915: Disable all planes before modesetting any pipes") > Signed-off-by: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx> Reviewed-by: Jani Nikula <jani.nikula@xxxxxxxxx> > --- > drivers/gpu/drm/i915/display/intel_display.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c > index f24c410cbd8f..dad8dac0ebbe 100644 > --- a/drivers/gpu/drm/i915/display/intel_display.c > +++ b/drivers/gpu/drm/i915/display/intel_display.c > @@ -6856,10 +6856,11 @@ static void intel_commit_modeset_disables(struct intel_atomic_state *state) > if (!intel_crtc_needs_modeset(new_crtc_state)) > continue; > > + intel_pre_plane_update(state, crtc); > + > if (!old_crtc_state->hw.active) > continue; > > - intel_pre_plane_update(state, crtc); > intel_crtc_disable_planes(state, crtc); > } -- Jani Nikula, Intel