[Intel-gfx] [PATCH 3/4] drm/i915/display/psr2: Fix cursor updates using legacy apis

Srivatsa, Anusha anusha.srivatsa at intel.com
Mon Jul 26 21:19:05 UTC 2021



> -----Original Message-----
> From: Intel-gfx <intel-gfx-bounces at lists.freedesktop.org> On Behalf Of José
> Roberto de Souza
> Sent: Friday, July 16, 2021 6:12 PM
> To: intel-gfx at lists.freedesktop.org
> Subject: [Intel-gfx] [PATCH 3/4] drm/i915/display/psr2: Fix cursor updates
> using legacy apis
> 
> The fast path only updates cursor register what will not cause any updates in
> the screen when using PSR2 selective fetch.
> 
> The only option that we have is to go trough the slow patch that will do full
s/ trough/Through

> atomic commit, that will trigger the PSR2 selective fetch compute and
> programing calls.
> 
> Without this patch is possible to see a mouse movement lag in Gnome when
> PSR2 selective fetch is enabled.
> 
> Cc: Gwan-gyeong Mun <gwan-gyeong.mun at intel.com>
> Signed-off-by: José Roberto de Souza <jose.souza at intel.com>
Assuming this was tested on gnome, the change makes sense.

Reviewed-by: Anusha Srivatsa <anusha.srivatsa at intel.com>

> ---
>  drivers/gpu/drm/i915/display/intel_cursor.c | 8 ++++++--
>  1 file changed, 6 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/display/intel_cursor.c
> b/drivers/gpu/drm/i915/display/intel_cursor.c
> index f61a25fb87e90..c7618fef01439 100644
> --- a/drivers/gpu/drm/i915/display/intel_cursor.c
> +++ b/drivers/gpu/drm/i915/display/intel_cursor.c
> @@ -629,12 +629,16 @@ intel_legacy_cursor_update(struct drm_plane
> *_plane,
> 
>  	/*
>  	 * When crtc is inactive or there is a modeset pending,
> -	 * wait for it to complete in the slowpath
> +	 * wait for it to complete in the slowpath.
> +	 * PSR2 selective fetch also requires the slow path as
> +	 * PSR2 plane and transcoder registers can only be updated during
> +	 * vblank.
>  	 *
>  	 * FIXME bigjoiner fastpath would be good
>  	 */
>  	if (!crtc_state->hw.active || intel_crtc_needs_modeset(crtc_state)
> ||
> -	    crtc_state->update_pipe || crtc_state->bigjoiner)
> +	    crtc_state->update_pipe || crtc_state->bigjoiner ||
> +	    crtc_state->enable_psr2_sel_fetch)
>  		goto slow;
> 
>  	/*
> --
> 2.32.0
> 
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx


More information about the Intel-gfx mailing list