/* Drivers should call this routine in their vblank interrupt handlers to update the vblank counter and send any signals that may be pending.  */
void drm_handle_vblank(struct drm_device *dev, int crtc)
/* Drivers should call this routine in their vblank interrupt handlers to update the vblank counter and send any signals that may be pending.  */
void drm_handle_vblank(struct drm_device *dev, int crtc)
{
	if (!dev->num_crtcs)
		return;
	atomic_inc(&dev->_vblank_count[crtc]);
	DRM_WAKEUP(&dev->vbl_queue[crtc]);
	drm_handle_vblank_events(dev, crtc);
}