Remove events and other unused elements

This renumbers the FenceFromFD request from 5 to 4 as well

Signed-off-by: Keith Packard <keithp@keithp.com>
This commit is contained in:
Keith Packard 2013-07-12 10:26:44 -07:00
parent 66d339c112
commit a5392ea74a
4 changed files with 11 additions and 180 deletions

View file

@ -1,5 +1,5 @@
dri3dir = $(includedir)/X11/extensions
dri3_HEADERS = dri3proto.h dri3tokens.h
dri3_HEADERS = dri3proto.h
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = dri3proto.pc

View file

@ -34,10 +34,9 @@
#define X_DRI3Open 1
#define X_DRI3PixmapFromBuffer 2
#define X_DRI3BufferFromPixmap 3
#define X_DRI3SelectInput 4
#define X_DRI3FenceFromFD 5
#define X_DRI3FenceFromFD 4
#define DRI3NumberRequests 6
#define DRI3NumberRequests 5
typedef struct {
CARD8 reqType;
@ -126,18 +125,6 @@ typedef struct {
} xDRI3BufferFromPixmapReply;
#define sz_xDRI3BufferFromPixmapReply 32
typedef struct {
CARD8 reqType;
CARD8 dri3ReqType;
CARD16 length B16;
CARD32 eid B32;
CARD32 window B32;
CARD32 eventMask B32;
} xDRI3SelectInputReq;
#define sz_xDRI3SelectInputReq 12
#define DRI3AllEvents (1 << DRI3ConfigureNotify)
typedef struct {
CARD8 reqType;
CARD8 dri3ReqType;
@ -151,32 +138,4 @@ typedef struct {
#define sz_xDRI3FenceFromFDReq 16
/*
* Events
*/
#define DRI3_ConfigureNotify 0
/* All DRI3 events are X Generic Events */
typedef struct {
CARD8 type;
CARD8 extension;
CARD16 sequenceNumber B16;
CARD32 length;
CARD16 evtype B16;
CARD16 pad2;
CARD32 eid B32;
CARD32 window B32;
INT16 x B16;
INT16 y B16;
CARD16 width B16;
CARD16 height B16;
INT16 off_x B16;
INT16 off_y B16;
CARD16 pixmap_width B16;
CARD16 pixmap_height B16;
CARD32 pixmap_flags B32;
} xDRI3ConfigureNotify;
#define sz_xDRI3ConfigureNotify 40
#endif

View file

@ -32,15 +32,7 @@ Arthur Huillet <arthur.huillet@free.fr>
2. Data Types
DRI3EVENTID { XID }
Defines a unique event delivery target for DRI3
events. Multiple event IDs can be allocated to provide
multiple distinct event delivery contexts.
DRI3EVENTMASK { DRI3ConfigureNotifyMask }
The DRI3 extension also uses the RandR extension Provider data type to
The DRI3 extension uses the RandR extension Provider data type to
select among multiple GPUs on a single screen and the Sync extension
fence object to provide graphics object synchronization.
@ -48,26 +40,19 @@ fence object to provide graphics object synchronization.
4. Errors
No errors are defined by the DRI3 extension.
DRI3 defines no errors.
❄ ❄ ❄ ❄ ❄ ❄ ❄
5. Events
DRI3 adds a ConfigureNotify event to inform clients about window
configuration changes which can affect the allocation of
window-related direct rendered buffers.
DRI3 defines no events.
❄ ❄ ❄ ❄ ❄ ❄ ❄
6. Protocol Types
DRI3DRIVER { DRI3DriverDRI
DRI3DriverVDPAU }
These values describe the type of driver the client will want
to load. The server sends back the name of the driver to use
for the screen in question.
DRI3 defines no new protocol types.
❄ ❄ ❄ ❄ ❄ ❄ ❄
@ -182,29 +167,6 @@ The name of this extension is "DRI3"
If buffer cannot be used with the screen associated with
drawable, a Match error is returned.
┌───
DRI3SelectInput
eventContext: DRI3EVENTID
window: WINDOW
eventMask: SETofDRI3EVENT
└───
Errors: Window, Value, Match, IDchoice
Selects the set of DRI3 events to be delivered for the
specified window and event context. DRI3SelectInput can
create, modifiy or delete event contexts. An event context is
associated with a specific window; using an existing event
context with a different window generates a Match error.
If eventContext specifies an existing event context, then if
eventMask is empty, DRI3SelectInput deletes the specified
context, otherwise the specified event context is changed to
select a different set of events.
If eventContext is an unused XID, then if eventMask is empty
no operation is performed. Otherwise, a new event context is
created selecting the specified events.
┌───
DRI3FenceFromFD
drawable: DRAWABLE
@ -225,30 +187,7 @@ The name of this extension is "DRI3"
9. Extension Events
DRI3ConfigureNotify is sent if DRI3SelectInput has requested it.
DRI3ConfigureNotify events are XGE events and so do not have a unique
event ID.
┌───
DRI3ConfigureNotify
type: CARD8 XGE event type (35)
extension: CARD8 DRI3 extension request number
length: CARD16 2
evtype: CARD16 DRI3_ConfigureNotify
eventID: DRI3EVENTID
window: WINDOW
x: INT16
y: INT16
width: CARD16
height: CARD16
off_x: INT16
off_y: INT16
pixmap_width: CARD16
pixmap_height: CARD16
pixmap_flags: CARD32
└───
'x' and 'y' are the parent-relative location of 'window'.
DRI3 defines no events.
❄ ❄ ❄ ❄ ❄ ❄ ❄
@ -303,13 +242,7 @@ protocol encoding document.
A.1 Common Types
┌───
DRI3DRIVER
0x0 DRI3DriverDRI
0x1 DRI3DriverVDPAU
└───
Note that these match the DRI2 values.
None.
A.2 Protocol Requests
@ -391,20 +324,10 @@ A.2 Protocol Requests
0 FD buffer
└───
┌───
DRI3SelectInput
1 CARD8 major opcode
1 4 DRI3 opcode
2 3 length
4 Window window
4 CARD32 eid
4 CARD32 event mask
└───
┌───
DRI3FenceFromFD
1 CARD8 major opcode
1 5 DRI3 opcode
1 4 DRI3 opcode
2 4 length
4 Drawable drawable
4 Fence fence
@ -416,26 +339,7 @@ A.2 Protocol Requests
A.3 Protocol Events
┌───
DRI3ConfigureNotify
1 35 XGE
1 CARD8 DRI3 extension opcode
2 CARD16 sequence number
4 2 length
2 0 DRI3ConfigureNotify
2 unused
4 CARD32 event id
4 Window window
2 INT16 x
2 INT16 y
2 CARD16 width
2 CARD16 height
2 INT16 off x
2 INT16 off y
2 CARD16 pixmap width
2 CARD16 pixmap height
4 CARD32 pixmap flags
└───
The DRI3 extension defines no events.
A.4 Protocol Errors

View file

@ -1,32 +0,0 @@
/*
* Copyright © 2013 Keith Packard
*
* Permission to use, copy, modify, distribute, and sell this software and its
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that copyright
* notice and this permission notice appear in supporting documentation, and
* that the name of the copyright holders not be used in advertising or
* publicity pertaining to distribution of the software without specific,
* written prior permission. The copyright holders make no representations
* about the suitability of this software for any purpose. It is provided "as
* is" without express or implied warranty.
*
* THE COPYRIGHT HOLDERS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
* INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
* EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY SPECIAL, INDIRECT OR
* CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
* DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
#ifndef _DRI3_TOKENS_H_
#define _DRI3_TOKENS_H_
#define DRI3ConfigureNotify 0
#define DRI3PixmapScanout 0x00000001
#define DRI3PixmapDriverMask 0xffff0000
#endif