aboutsummaryrefslogtreecommitdiffstats
path: root/include/drm/drm_crtc.h
diff options
context:
space:
mode:
authorEric Anholt <eric@anholt.net>2009-12-01 12:01:54 -0500
committerEric Anholt <eric@anholt.net>2009-12-01 12:01:54 -0500
commitf40d6817a5c2bf84f5fe7b5d1a83f1e8f8669951 (patch)
tree1c515a34a60f65cbfd3cf1a387427d0a9fdf878f /include/drm/drm_crtc.h
parent103a196f4224dc6872081305cf7f82ebf67aa7bd (diff)
parent46557bef3f3834ac33031c7be27d39d90d507442 (diff)
Merge remote branch 'airlied/drm-next' into drm-intel-next
Diffstat (limited to 'include/drm/drm_crtc.h')
-rw-r--r--include/drm/drm_crtc.h16
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 {
290struct drm_crtc; 290struct drm_crtc;
291struct drm_connector; 291struct drm_connector;
292struct drm_encoder; 292struct drm_encoder;
293struct 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,
757extern int drm_mode_gamma_set_ioctl(struct drm_device *dev, 771extern 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);
759extern bool drm_detect_hdmi_monitor(struct edid *edid); 773extern bool drm_detect_hdmi_monitor(struct edid *edid);
774extern int drm_mode_page_flip_ioctl(struct drm_device *dev,
775 void *data, struct drm_file *file_priv);
760extern struct drm_display_mode *drm_cvt_mode(struct drm_device *dev, 776extern 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);