OSDN Git Service

drm/i915: Do DRRS disable/enable during pre/post_plane_update()
authorVille Syrjälä <ville.syrjala@linux.intel.com>
Tue, 15 Mar 2022 21:39:44 +0000 (23:39 +0200)
committerVille Syrjälä <ville.syrjala@linux.intel.com>
Wed, 16 Mar 2022 12:45:48 +0000 (14:45 +0200)
commit1b333c679a0fdfd899269b7e10a002aad334a15e
treed52959a31a6f039f262965983ff50a97c6eb96e8
parent1c00404769dcd4b51c691aeba9eb98d72632720e
drm/i915: Do DRRS disable/enable during pre/post_plane_update()

Let's just do a full DRRS disable/enable across all pipe updates.
This guarantees that the DRRS work doesn't interfere with anything
while the atomic commit is busy reprogramming the pipe.

Needed so that we can start reprogramming M/N seamlessly during
fastsets whenever possible. Also avoids the pre-bdw DRRS PIPECONF
rmw racing with the potential PIPECONF write from the atomic
commit (eg. due to GAMMA_MODE changes).

v2: Include has_drrs in state dump (José)

Reviewed-by: José Roberto de Souza <jose.souza@intel.com>
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20220315213944.17132-1-ville.syrjala@linux.intel.com
drivers/gpu/drm/i915/display/intel_ddi.c
drivers/gpu/drm/i915/display/intel_display.c
drivers/gpu/drm/i915/display/intel_drrs.c
drivers/gpu/drm/i915/display/intel_drrs.h