]> git.baikalelectronics.ru Git - kernel.git/commit
drm/i915/fbc: Wait for vblank after FBC disable on glk+
authorVille Syrjälä <ville.syrjala@linux.intel.com>
Thu, 28 Nov 2019 15:03:38 +0000 (17:03 +0200)
committerVille Syrjälä <ville.syrjala@linux.intel.com>
Mon, 9 Dec 2019 14:10:58 +0000 (16:10 +0200)
commit99ccdfac07a023b3e8fe14e7b81d02a1a8527a30
tree9bac40950511f03e86de76a605d14162318d0404
parentf3272df127951d205d166ae5f94b54923d46d58c
drm/i915/fbc: Wait for vblank after FBC disable on glk+

On glk+ the hardware gets confused if we disable FBC while
it's recompressing and we perform a plane update during the
same frame. The result is that top of the screen gets corrupted.

We can avoid that by giving the hardware enough time to finish
the FBC disable before we touch the plane registers. Ie. we need
an extra vblank wait after FBC disable.

v2: Don't do the vblank wait if we never activated FBC in hw

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20191128150338.12490-1-ville.syrjala@linux.intel.com
Reviewed-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
drivers/gpu/drm/i915/display/intel_display.c
drivers/gpu/drm/i915/display/intel_fbc.c
drivers/gpu/drm/i915/display/intel_fbc.h
drivers/gpu/drm/i915/i915_drv.h