summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/drm_irq.c
diff options
context:
space:
mode:
authorVille Syrjälä <ville.syrjala@linux.intel.com>2014-08-06 14:49:54 +0300
committerDaniel Vetter <daniel.vetter@ffwll.ch>2014-08-06 22:39:28 +0200
commit00185e667009dda907887a4f84fbd02c6e651a49 (patch)
tree2f41e86d1ecf52e826a5958e559894cb40ab6efb /drivers/gpu/drm/drm_irq.c
parent4ed0ce3d0bccd74416ba6beb33a8a79d1617e97b (diff)
downloadlinux-00185e667009dda907887a4f84fbd02c6e651a49.tar.bz2
drm: Add dev->vblank_disable_immediate flag
Add a flag to drm_device which will cause the vblank code to bypass the disable timer and always disable the vblank interrupt immediately when the last reference is dropped. v2: Add some notes about the flag to the kernel doc Reviewed-by: Matt Roper <matthew.d.roper@intel.com> Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'drivers/gpu/drm/drm_irq.c')
-rw-r--r--drivers/gpu/drm/drm_irq.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/gpu/drm/drm_irq.c b/drivers/gpu/drm/drm_irq.c
index 99145c4d536b..8dbcc3f892d5 100644
--- a/drivers/gpu/drm/drm_irq.c
+++ b/drivers/gpu/drm/drm_irq.c
@@ -994,7 +994,7 @@ void drm_vblank_put(struct drm_device *dev, int crtc)
/* Last user schedules interrupt disable */
if (atomic_dec_and_test(&vblank->refcount)) {
- if (drm_vblank_offdelay < 0)
+ if (dev->vblank_disable_immediate || drm_vblank_offdelay < 0)
vblank_disable_fn((unsigned long)vblank);
else if (drm_vblank_offdelay > 0)
mod_timer(&vblank->disable_timer,