diff options
| -rw-r--r-- | drivers/gpu/drm/drm_irq.c | 20 | ||||
| -rw-r--r-- | include/drm/drmP.h | 1 |
2 files changed, 21 insertions, 0 deletions
diff --git a/drivers/gpu/drm/drm_irq.c b/drivers/gpu/drm/drm_irq.c index 276301081aa5..ece5a93a6114 100644 --- a/drivers/gpu/drm/drm_irq.c +++ b/drivers/gpu/drm/drm_irq.c | |||
| @@ -1613,6 +1613,8 @@ static void drm_handle_vblank_events(struct drm_device *dev, int crtc) | |||
| 1613 | * | 1613 | * |
| 1614 | * Drivers should call this routine in their vblank interrupt handlers to | 1614 | * Drivers should call this routine in their vblank interrupt handlers to |
| 1615 | * update the vblank counter and send any signals that may be pending. | 1615 | * update the vblank counter and send any signals that may be pending. |
| 1616 | * | ||
| 1617 | * This is the legacy version of drm_crtc_handle_vblank(). | ||
| 1616 | */ | 1618 | */ |
| 1617 | bool drm_handle_vblank(struct drm_device *dev, int crtc) | 1619 | bool drm_handle_vblank(struct drm_device *dev, int crtc) |
| 1618 | { | 1620 | { |
| @@ -1689,3 +1691,21 @@ bool drm_handle_vblank(struct drm_device *dev, int crtc) | |||
| 1689 | return true; | 1691 | return true; |
| 1690 | } | 1692 | } |
| 1691 | EXPORT_SYMBOL(drm_handle_vblank); | 1693 | EXPORT_SYMBOL(drm_handle_vblank); |
| 1694 | |||
| 1695 | /** | ||
| 1696 | * drm_crtc_handle_vblank - handle a vblank event | ||
| 1697 | * @crtc: where this event occurred | ||
| 1698 | * | ||
| 1699 | * Drivers should call this routine in their vblank interrupt handlers to | ||
| 1700 | * update the vblank counter and send any signals that may be pending. | ||
| 1701 | * | ||
| 1702 | * This is the native KMS version of drm_handle_vblank(). | ||
| 1703 | * | ||
| 1704 | * Returns: | ||
| 1705 | * True if the event was successfully handled, false on failure. | ||
| 1706 | */ | ||
| 1707 | bool drm_crtc_handle_vblank(struct drm_crtc *crtc) | ||
| 1708 | { | ||
| 1709 | return drm_handle_vblank(crtc->dev, drm_crtc_index(crtc)); | ||
| 1710 | } | ||
| 1711 | EXPORT_SYMBOL(drm_crtc_handle_vblank); | ||
diff --git a/include/drm/drmP.h b/include/drm/drmP.h index b78601bb7c46..f1f7f15ce0f3 100644 --- a/include/drm/drmP.h +++ b/include/drm/drmP.h | |||
| @@ -908,6 +908,7 @@ extern void drm_send_vblank_event(struct drm_device *dev, int crtc, | |||
| 908 | extern void drm_crtc_send_vblank_event(struct drm_crtc *crtc, | 908 | extern void drm_crtc_send_vblank_event(struct drm_crtc *crtc, |
| 909 | struct drm_pending_vblank_event *e); | 909 | struct drm_pending_vblank_event *e); |
| 910 | extern bool drm_handle_vblank(struct drm_device *dev, int crtc); | 910 | extern bool drm_handle_vblank(struct drm_device *dev, int crtc); |
| 911 | extern bool drm_crtc_handle_vblank(struct drm_crtc *crtc); | ||
| 911 | extern int drm_vblank_get(struct drm_device *dev, int crtc); | 912 | extern int drm_vblank_get(struct drm_device *dev, int crtc); |
| 912 | extern void drm_vblank_put(struct drm_device *dev, int crtc); | 913 | extern void drm_vblank_put(struct drm_device *dev, int crtc); |
| 913 | extern int drm_crtc_vblank_get(struct drm_crtc *crtc); | 914 | extern int drm_crtc_vblank_get(struct drm_crtc *crtc); |
