[Intel-gfx] [PATCH] drm/i915: Flag purely internal commits to not clear crtc_state->inherited
Luca Coelho
luca at coelho.fi
Thu Apr 13 10:41:32 UTC 2023
On Tue, 2023-03-28 at 15:23 +0300, Ville Syrjala wrote:
> From: Ville Syrjälä <ville.syrjala at linux.intel.com>
>
> 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 at linux.intel.com>
> ---
Looks good to me.
Reviewed-by: Luca Coelho <luciano.coelho at intel.com>
--
Cheers,
Luca.
More information about the Intel-gfx
mailing list