diff options
Diffstat (limited to 'include/drm/drm_crtc.h')
-rw-r--r-- | include/drm/drm_crtc.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/include/drm/drm_crtc.h b/include/drm/drm_crtc.h index bfcc60d101db..51d613673b2e 100644 --- a/include/drm/drm_crtc.h +++ b/include/drm/drm_crtc.h | |||
@@ -290,6 +290,7 @@ struct drm_property { | |||
290 | struct drm_crtc; | 290 | struct drm_crtc; |
291 | struct drm_connector; | 291 | struct drm_connector; |
292 | struct drm_encoder; | 292 | struct drm_encoder; |
293 | struct drm_pending_vblank_event; | ||
293 | 294 | ||
294 | /** | 295 | /** |
295 | * drm_crtc_funcs - control CRTCs for a given device | 296 | * drm_crtc_funcs - control CRTCs for a given device |
@@ -333,6 +334,19 @@ struct drm_crtc_funcs { | |||
333 | void (*destroy)(struct drm_crtc *crtc); | 334 | void (*destroy)(struct drm_crtc *crtc); |
334 | 335 | ||
335 | int (*set_config)(struct drm_mode_set *set); | 336 | int (*set_config)(struct drm_mode_set *set); |
337 | |||
338 | /* | ||
339 | * Flip to the given framebuffer. This implements the page | ||
340 | * flip ioctl descibed in drm_mode.h, specifically, the | ||
341 | * implementation must return immediately and block all | ||
342 | * rendering to the current fb until the flip has completed. | ||
343 | * If userspace set the event flag in the ioctl, the event | ||
344 | * argument will point to an event to send back when the flip | ||
345 | * completes, otherwise it will be NULL. | ||
346 | */ | ||
347 | int (*page_flip)(struct drm_crtc *crtc, | ||
348 | struct drm_framebuffer *fb, | ||
349 | struct drm_pending_vblank_event *event); | ||
336 | }; | 350 | }; |
337 | 351 | ||
338 | /** | 352 | /** |
@@ -757,6 +771,8 @@ extern int drm_mode_gamma_get_ioctl(struct drm_device *dev, | |||
757 | extern int drm_mode_gamma_set_ioctl(struct drm_device *dev, | 771 | extern int drm_mode_gamma_set_ioctl(struct drm_device *dev, |
758 | void *data, struct drm_file *file_priv); | 772 | void *data, struct drm_file *file_priv); |
759 | extern bool drm_detect_hdmi_monitor(struct edid *edid); | 773 | extern bool drm_detect_hdmi_monitor(struct edid *edid); |
774 | extern int drm_mode_page_flip_ioctl(struct drm_device *dev, | ||
775 | void *data, struct drm_file *file_priv); | ||
760 | extern struct drm_display_mode *drm_cvt_mode(struct drm_device *dev, | 776 | extern struct drm_display_mode *drm_cvt_mode(struct drm_device *dev, |
761 | int hdisplay, int vdisplay, int vrefresh, | 777 | int hdisplay, int vdisplay, int vrefresh, |
762 | bool reduced, bool interlaced, bool margins); | 778 | bool reduced, bool interlaced, bool margins); |