diff options
author | Daniel Vetter <daniel.vetter@ffwll.ch> | 2014-09-10 17:36:09 +0200 |
---|---|---|
committer | Daniel Vetter <daniel.vetter@ffwll.ch> | 2014-09-11 13:32:05 +0200 |
commit | 855d30b402b91f09c90f65c34ec91debaae8cf3a (patch) | |
tree | 49dc14e33919cf232cc37b49666cc21d317885db /include/drm | |
parent | drm: Really never disable vblank irqs for offdelay==0 (diff) | |
download | linux-855d30b402b91f09c90f65c34ec91debaae8cf3a.tar.xz linux-855d30b402b91f09c90f65c34ec91debaae8cf3a.zip |
drm: Only update final vblank count when precise ts is available
Drivers without a hardware vblank counter simply can't account for the
vblanks that happened while the vblank interrupt was off. To check
this grab a vblank timestamp and if the result is dubious follow the
normal save-and-disable logic.
Drivers should prevent this by setting vblank_disable_allowed = false,
but since running vblank interrupts constantly is not good for power
consumption most drivers lie. Testing for precise vblank timestamps is
the next best thing we can check for.
Suggested-by: Mario Kleiner <mario.kleiner.de@gmail.com>
Cc: Mario Kleiner <mario.kleiner.de@gmail.com>
Cc: Matt Roper <matthew.d.roper@intel.com>
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Mario Kleiner <mario.kleiner.de@gmail.com>
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
Diffstat (limited to 'include/drm')
0 files changed, 0 insertions, 0 deletions