]> git.baikalelectronics.ru Git - kernel.git/commit
drm/i915: Wait for pending page flips before enabling/disabling the primary plane
authorVille Syrjälä <ville.syrjala@linux.intel.com>
Wed, 21 May 2014 11:04:46 +0000 (14:04 +0300)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Thu, 22 May 2014 13:06:33 +0000 (15:06 +0200)
commit15bf30e68982bede02aa94075ecb0ec60527055a
tree73b9716b13ea7a566e4c58eb65062ba3d5a72ee8
parent9b1113d63290ee87cea66d56a8452221ccac0db6
drm/i915: Wait for pending page flips before enabling/disabling the primary plane

We have to write to the primary plane base address registrer when we
enable/disable the primary plane in response to sprite coverage. Those
writes will cause the flip counter to increment which could interfere
with the detection of CS flip completion. We could end up completing
CS flips before the CS has even executed the commands from the ring.

To avoid such issues, wait for CS flips to finish before we toggle the
primary plane on/off.

v2: Rebased due to atomic sprite update changes

Testcase: igt/kms_mmio_vs_cs_flip/setplane_vs_cs_flip
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by Rodrigo Vivi <rodrigo.vivi@gmail.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/gpu/drm/i915/intel_display.c
drivers/gpu/drm/i915/intel_drv.h
drivers/gpu/drm/i915/intel_sprite.c