]> git.baikalelectronics.ru Git - kernel.git/commit
drm: Add drm_vblank_on()
authorVille Syrjälä <ville.syrjala@linux.intel.com>
Wed, 19 Feb 2014 19:29:49 +0000 (21:29 +0200)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Tue, 20 May 2014 19:13:35 +0000 (21:13 +0200)
commite6e1ff96b09d7f121ebf4661b8ea6cadce4fe05a
treed80fa96d1fafc4a3d916d99aa6f4d664aaa49046
parent98609f4dbf48bbd1accc38bee13d7875aa3b839e
drm: Add drm_vblank_on()

drm_vblank_off() will turn off vblank interrupts, but as long as the
refcount is elevated drm_vblank_get() will not re-enable them. This
is a problem is someone is holding a vblank reference while a modeset is
happening, and the driver requires vblank interrupt to work during that
time.

Add drm_vblank_on() as a counterpart to drm_vblank_off() which will
re-enabled vblank interrupts if the refcount is already elevated. This
will allow drivers to choose the specific places in the modeset sequence
at which vblank interrupts get disabled and enabled.

Testcase: igt/kms_flip/*-vs-suspend
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
[danvet: Add Testcase tag for the igt I've written.]
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/gpu/drm/drm_irq.c
drivers/gpu/drm/i915/intel_display.c
include/drm/drmP.h