On Tue, 2023-03-28 at 15:23 +0300, Ville Syrjala wrote: > From: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx> > > If we have to force the hardware to go through a full modeset > due to eg. cdclk reprogramming, we need to preserve > crtc_state->inherited for all crtcs that have not otherwise > gone through the whole compute_config() stuff after connectors > have been detected. > > Otherwise eg. cdclk induced modeset glk_force_audio_cdclk() > will clear the inherited flag, and thus the first real commit > coming from userspace later on will not be forced through > the full .compute_config() path and so eg. audio state may > not get properly recomputed. > > But instead of adding all kinds of ad-hoc crtc_state->inherited > preservation hacks all over, let's change things so that we > only clear it for the crtcs directly included in userspace/client > initiated commits. > > Should be far less fragile since now we just need to remember > to flag the internal commits, and not worry about where new > crtcs might get pulled in. > > Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/5260 > Signed-off-by: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx> > --- Looks good to me. Reviewed-by: Luca Coelho <luciano.coelho@xxxxxxxxx> -- Cheers, Luca.