drm/i915/tgl/psr: Fix glitches when doing frontbuffer modifications
authorJosé Roberto de Souza <jose.souza@intel.com>
Fri, 2 Oct 2020 23:16:27 +0000 (16:16 -0700)
committerJosé Roberto de Souza <jose.souza@intel.com>
Fri, 23 Oct 2020 21:29:17 +0000 (14:29 -0700)
commit71c1a4998320962f7b8362b2c5ee36610d49e8fb
treea697216707b1cc38191ddc20fdc99393cf98fd96
parente44adb5d9ab9e574a7814d804d05de65dd727768
drm/i915/tgl/psr: Fix glitches when doing frontbuffer modifications

Writes to CURSURFLIVE in TGL are causing IOMMU errors and visual
glitches that are often reproduced when executing CPU intensive
workloads while a eDP 4K panel is attached.

Manually exiting PSR causes the frontbuffer to be updated without
glitches and the IOMMU errors are also gone but this comes at the cost
of less time with PSR active.

So using this workaround until this issue is root caused and a better
fix is found.

The current code is already ready to enable PSR after this exit if
there is not other frontbuffer modifications.

Adding a new if block in psr_force_hw_tracking_exit() instead of reuse
the else/gen8- block because the plan is to revert this workaround
as soon as a better solution is found.

Cc: Gwan-gyeong Mun <gwan-gyeong.mun@intel.com>
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: José Roberto de Souza <jose.souza@intel.com>
Tested-by: Gwan-gyeong Mun <gwan-gyeong.mun@intel.com>
Reviewed-by: Gwan-gyeong Mun <gwan-gyeong.mun@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20201002231627.24528-1-jose.souza@intel.com
drivers/gpu/drm/i915/display/intel_psr.c