summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKeith Packard <keithp@keithp.com>2013-05-08 12:30:22 -0700
committerKeith Packard <keithp@keithp.com>2013-05-08 12:30:22 -0700
commitef3eca70549719bd30b35f5d703727dd29b849b1 (patch)
tree27554ecfc8c9312e6953f9b75781a95446295589
parent9998b10076e98e04188cb28dea13252dfae2757d (diff)
Add GetSyncShmFD request
Returns a file descriptor for a shared memory segment containing a sync fence object. Signed-off-by: Keith Packard <keithp@keithp.com>
-rw-r--r--dri3proto.h30
-rw-r--r--dri3tokens.h1
2 files changed, 29 insertions, 2 deletions
diff --git a/dri3proto.h b/dri3proto.h
index 6fb2cc9..7e8eae8 100644
--- a/dri3proto.h
+++ b/dri3proto.h
@@ -28,12 +28,14 @@
#define DRI3_MINOR 0
#define DRI3NumberErrors 0
-#define DRI3NumberEvents 1
-#define DRI3NumberRequests 3
+#define DRI3NumberEvents 0
#define X_DRI3QueryVersion 0
#define X_DRI3Connect 1
#define X_DRI3SelectInput 2
+#define X_DRI3GetSyncShmFD 3
+
+#define DRI3NumberRequests 4
typedef struct {
CARD8 reqType;
@@ -93,6 +95,30 @@ typedef struct {
#define DRI3AllEvents (1 << DRI3ConfigureNotify)
+typedef struct {
+ CARD8 reqType;
+ CARD8 dri3ReqType;
+ CARD16 length B16;
+ CARD32 syncFence B32;
+ CARD32 window B32;
+} xDRI3GetSyncFenceFd;
+
+#define sz_xDRI3GetSyncFenceFd 12
+
+typedef struct {
+ BYTE type; /* X_Reply */
+ CARD8 nfd; /* Number of file descriptors returned (1) */
+ CARD16 sequenceNumber B16;
+ CARD32 length B32;
+ CARD32 pad2 B32;
+ CARD32 pad3 B32;
+ CARD32 pad4 B32;
+ CARD32 pad5 B32;
+ CARD32 pad6 B32;
+ CARD32 pad7 B32;
+} xDRI3GetSyncFenceFdReply;
+#define sz_xDRI3GetSyncFenceFdReply 32
+
/*
* Events
*/
diff --git a/dri3tokens.h b/dri3tokens.h
index fe93bca..82c1409 100644
--- a/dri3tokens.h
+++ b/dri3tokens.h
@@ -27,4 +27,5 @@
#define DRI3DriverVDPAU 1
#define DRI3ConfigureNotify 0
+
#endif