OSDN Git Service

test/amdgpu: add proper error handling v2
[android-x86/external-libdrm.git] / xf86drm.h
index 0dbf494..7773d71 100644 (file)
--- a/xf86drm.h
+++ b/xf86drm.h
@@ -636,6 +636,12 @@ extern int           drmCtlUninstHandler(int fd);
 extern int           drmSetClientCap(int fd, uint64_t capability,
                                     uint64_t value);
 
+extern int           drmCrtcGetSequence(int fd, uint32_t crtcId,
+                                       uint64_t *sequence, uint64_t *ns);
+extern int           drmCrtcQueueSequence(int fd, uint32_t crtcId,
+                                         uint32_t flags, uint64_t sequence,
+                                         uint64_t *sequence_queued,
+                                         uint64_t user_data);
 /* General user-level programmer's API: authenticated client and/or X */
 extern int           drmMap(int fd,
                            drm_handle_t handle,
@@ -728,7 +734,7 @@ extern void drmMsg(const char *format, ...) DRM_PRINTFLIKE(1, 2);
 extern int drmSetMaster(int fd);
 extern int drmDropMaster(int fd);
 
-#define DRM_EVENT_CONTEXT_VERSION 3
+#define DRM_EVENT_CONTEXT_VERSION 4
 
 typedef struct _drmEventContext {
 
@@ -755,6 +761,10 @@ typedef struct _drmEventContext {
                                   unsigned int crtc_id,
                                   void *user_data);
 
+       void (*sequence_handler)(int fd,
+                                uint64_t sequence,
+                                uint64_t ns,
+                                uint64_t user_data);
 } drmEventContext, *drmEventContextPtr;
 
 extern int drmHandleEvent(int fd, drmEventContextPtr evctx);