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 through the slow patch that will do full 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@intel.com> Signed-off-by: José Roberto de Souza <jose.souza@intel.com> Reviewed-by: Anusha Srivatsa <anusha.srivatsa@intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20210717011227.204494-3-jose.souza@intel.com
This commit is contained in:
parent
5cc92edb6e
commit
6bdab0e5b5
@ -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;
|
||||
|
||||
/*
|
||||
|
Loading…
x
Reference in New Issue
Block a user