]> git.baikalelectronics.ru Git - kernel.git/commit
drm/i915: Fix gen3/4 vblank counter wraparound
authorVille Syrjälä <ville.syrjala@linux.intel.com>
Wed, 6 Nov 2013 15:56:27 +0000 (13:56 -0200)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Thu, 7 Nov 2013 16:20:17 +0000 (17:20 +0100)
commit9c56e0aa958f06e40643bb0266bf279c060e0d24
tree68d7e84d0b1f105c1b07356c42c889c9ae3cbd40
parente4e8ab5dfa17dc120a69e3ee904a5942bdf8985c
drm/i915: Fix gen3/4 vblank counter wraparound

When the hardware frame counter reads 0xffffff and we're already past
vblank start, we'd return 0x1000000 as the vblank counter value. Once
we'd cross into the next frame's active portion, the vblank counter
would wrap to 0. So we're reporting two different vblank counter values
for the same frame.

Fix the problem by masking the cooked value by 0xffffff to make sure
the counter wraps already after vblank start.

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@gmail.com>
Reviewed-by: Imre Deak <imre.deak@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/gpu/drm/i915/i915_irq.c