diff options
author | Keith Packard <keithp@keithp.com> | 2013-05-13 16:35:04 -0700 |
---|---|---|
committer | Keith Packard <keithp@keithp.com> | 2013-05-13 16:35:04 -0700 |
commit | f078e7fe0685573268f8d2cf5a473ff2d2344d1d (patch) | |
tree | ee1111244ded640724c6dd8145e4a07d9109c7a8 | |
parent | ef3eca70549719bd30b35f5d703727dd29b849b1 (diff) |
Rename Connect as Open, make it work. Add SHM SyncFences
Signed-off-by: Keith Packard <keithp@keithp.com>
-rw-r--r-- | dri3proto.h | 15 | ||||
-rw-r--r-- | dri3proto.txt | 16 |
2 files changed, 24 insertions, 7 deletions
diff --git a/dri3proto.h b/dri3proto.h index 7e8eae8..3d44388 100644 --- a/dri3proto.h +++ b/dri3proto.h @@ -31,7 +31,7 @@ #define DRI3NumberEvents 0 #define X_DRI3QueryVersion 0 -#define X_DRI3Connect 1 +#define X_DRI3Open 1 #define X_DRI3SelectInput 2 #define X_DRI3GetSyncShmFD 3 @@ -64,14 +64,15 @@ typedef struct { CARD8 reqType; CARD8 dri3ReqType; CARD16 length B16; - CARD32 window B32; + CARD32 drawable B32; CARD32 driverType B32; -} xDRI3ConnectReq; -#define sz_xDRI3ConnectReq 12 + CARD32 provider B32; +} xDRI3OpenReq; +#define sz_xDRI3OpenReq 16 typedef struct { BYTE type; /* X_Reply */ - BYTE pad1; + CARD8 nfd; CARD16 sequenceNumber B16; CARD32 length B32; CARD32 driverNameLength B32; @@ -80,8 +81,8 @@ typedef struct { CARD32 pad4 B32; CARD32 pad5 B32; CARD32 pad6 B32; -} xDRI3ConnectReply; -#define sz_xDRI3ConnectReply 32 +} xDRI3OpenReply; +#define sz_xDRI3OpenReply 32 typedef struct { CARD8 reqType; diff --git a/dri3proto.txt b/dri3proto.txt index b633d3c..bc3d0bf 100644 --- a/dri3proto.txt +++ b/dri3proto.txt @@ -89,6 +89,7 @@ The name of this extension is "DRI3" (third time is the charm?). driverType: DRI3DRIVER provider: PROVIDER ▶ + nfd: CARD8 driver: STRING device: FD └─── @@ -145,6 +146,21 @@ The name of this extension is "DRI3" (third time is the charm?). with a file descriptor referencing the underlying direct rendering object. +┌─── + DRI3GetSyncFenceFd + fence: FENCE + window: WINDOW + ▶ + nfd: CARD8 + fd: FD +└─── + Errors: Fence, Match + + Pass back a shared memory segment associated with a sync fence + object. Pass this fd to the XShmFence library to map and + manipulate the fence. + + ❄ ❄ ❄ ❄ ❄ ❄ ❄ 9. Extension Events |