| /************************************************************************** |
| |
| Copyright 1998-1999 Precision Insight, Inc., Cedar Park, Texas. |
| Copyright 2000 VA Linux Systems, Inc. |
| All Rights Reserved. |
| |
| Permission is hereby granted, free of charge, to any person obtaining a |
| copy of this software and associated documentation files (the |
| "Software"), to deal in the Software without restriction, including |
| without limitation the rights to use, copy, modify, merge, publish, |
| distribute, sub license, and/or sell copies of the Software, and to |
| permit persons to whom the Software is furnished to do so, subject to |
| the following conditions: |
| |
| The above copyright notice and this permission notice (including the |
| next paragraph) shall be included in all copies or substantial portions |
| of the Software. |
| |
| THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS |
| OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF |
| MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. |
| IN NO EVENT SHALL PRECISION INSIGHT AND/OR ITS SUPPLIERS BE LIABLE FOR |
| ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, |
| TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE |
| SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. |
| |
| **************************************************************************/ |
| |
| /* |
| * Authors: |
| * Kevin E. Martin <martin@valinux.com> |
| * Jens Owen <jowen@vmware.com> |
| * Rickard E. (Rik) Fiath <faith@valinux.com> |
| * |
| */ |
| |
| #ifndef _XF86DRISTR_H_ |
| #define _XF86DRISTR_H_ |
| |
| #include "xf86dri.h" |
| |
| #define XF86DRINAME "XFree86-DRI" |
| |
| /* The DRI version number. This was originally set to be the same of the |
| * XFree86 version number. However, this version is really indepedent of |
| * the XFree86 version. |
| * |
| * Version History: |
| * 4.0.0: Original |
| * 4.0.1: Patch to bump clipstamp when windows are destroyed, 28 May 02 |
| * 4.1.0: Add transition from single to multi in DRMInfo rec, 24 Jun 02 |
| */ |
| #define XF86DRI_MAJOR_VERSION 4 |
| #define XF86DRI_MINOR_VERSION 1 |
| #define XF86DRI_PATCH_VERSION 0 |
| |
| typedef struct _XF86DRIQueryVersion |
| { |
| CARD8 reqType; /* always DRIReqCode */ |
| CARD8 driReqType; /* always X_DRIQueryVersion */ |
| CARD16 length B16; |
| } xXF86DRIQueryVersionReq; |
| #define sz_xXF86DRIQueryVersionReq 4 |
| |
| typedef struct |
| { |
| BYTE type; /* X_Reply */ |
| BOOL pad1; |
| CARD16 sequenceNumber B16; |
| CARD32 length B32; |
| CARD16 majorVersion B16; /* major version of DRI protocol */ |
| CARD16 minorVersion B16; /* minor version of DRI protocol */ |
| CARD32 patchVersion B32; /* patch version of DRI protocol */ |
| CARD32 pad3 B32; |
| CARD32 pad4 B32; |
| CARD32 pad5 B32; |
| CARD32 pad6 B32; |
| } xXF86DRIQueryVersionReply; |
| #define sz_xXF86DRIQueryVersionReply 32 |
| |
| typedef struct _XF86DRIQueryDirectRenderingCapable |
| { |
| CARD8 reqType; /* always DRIReqCode */ |
| CARD8 driReqType; /* X_DRIQueryDirectRenderingCapable */ |
| CARD16 length B16; |
| CARD32 screen B32; |
| } xXF86DRIQueryDirectRenderingCapableReq; |
| #define sz_xXF86DRIQueryDirectRenderingCapableReq 8 |
| |
| typedef struct |
| { |
| BYTE type; /* X_Reply */ |
| BOOL pad1; |
| CARD16 sequenceNumber B16; |
| CARD32 length B32; |
| BOOL isCapable; |
| BOOL pad2; |
| BOOL pad3; |
| BOOL pad4; |
| CARD32 pad5 B32; |
| CARD32 pad6 B32; |
| CARD32 pad7 B32; |
| CARD32 pad8 B32; |
| CARD32 pad9 B32; |
| } xXF86DRIQueryDirectRenderingCapableReply; |
| #define sz_xXF86DRIQueryDirectRenderingCapableReply 32 |
| |
| typedef struct _XF86DRIOpenConnection |
| { |
| CARD8 reqType; /* always DRIReqCode */ |
| CARD8 driReqType; /* always X_DRIOpenConnection */ |
| CARD16 length B16; |
| CARD32 screen B32; |
| } xXF86DRIOpenConnectionReq; |
| #define sz_xXF86DRIOpenConnectionReq 8 |
| |
| typedef struct |
| { |
| BYTE type; /* X_Reply */ |
| BOOL pad1; |
| CARD16 sequenceNumber B16; |
| CARD32 length B32; |
| CARD32 hSAREALow B32; |
| CARD32 hSAREAHigh B32; |
| CARD32 busIdStringLength B32; |
| CARD32 pad6 B32; |
| CARD32 pad7 B32; |
| CARD32 pad8 B32; |
| } xXF86DRIOpenConnectionReply; |
| #define sz_xXF86DRIOpenConnectionReply 32 |
| |
| typedef struct _XF86DRIAuthConnection |
| { |
| CARD8 reqType; /* always DRIReqCode */ |
| CARD8 driReqType; /* always X_DRICloseConnection */ |
| CARD16 length B16; |
| CARD32 screen B32; |
| CARD32 magic B32; |
| } xXF86DRIAuthConnectionReq; |
| #define sz_xXF86DRIAuthConnectionReq 12 |
| |
| typedef struct |
| { |
| BYTE type; |
| BOOL pad1; |
| CARD16 sequenceNumber B16; |
| CARD32 length B32; |
| CARD32 authenticated B32; |
| CARD32 pad2 B32; |
| CARD32 pad3 B32; |
| CARD32 pad4 B32; |
| CARD32 pad5 B32; |
| CARD32 pad6 B32; |
| } xXF86DRIAuthConnectionReply; |
| #define zx_xXF86DRIAuthConnectionReply 32 |
| |
| typedef struct _XF86DRICloseConnection |
| { |
| CARD8 reqType; /* always DRIReqCode */ |
| CARD8 driReqType; /* always X_DRICloseConnection */ |
| CARD16 length B16; |
| CARD32 screen B32; |
| } xXF86DRICloseConnectionReq; |
| #define sz_xXF86DRICloseConnectionReq 8 |
| |
| typedef struct _XF86DRIGetClientDriverName |
| { |
| CARD8 reqType; /* always DRIReqCode */ |
| CARD8 driReqType; /* always X_DRIGetClientDriverName */ |
| CARD16 length B16; |
| CARD32 screen B32; |
| } xXF86DRIGetClientDriverNameReq; |
| #define sz_xXF86DRIGetClientDriverNameReq 8 |
| |
| typedef struct |
| { |
| BYTE type; /* X_Reply */ |
| BOOL pad1; |
| CARD16 sequenceNumber B16; |
| CARD32 length B32; |
| CARD32 ddxDriverMajorVersion B32; |
| CARD32 ddxDriverMinorVersion B32; |
| CARD32 ddxDriverPatchVersion B32; |
| CARD32 clientDriverNameLength B32; |
| CARD32 pad5 B32; |
| CARD32 pad6 B32; |
| } xXF86DRIGetClientDriverNameReply; |
| #define sz_xXF86DRIGetClientDriverNameReply 32 |
| |
| typedef struct _XF86DRICreateContext |
| { |
| CARD8 reqType; /* always DRIReqCode */ |
| CARD8 driReqType; /* always X_DRICreateContext */ |
| CARD16 length B16; |
| CARD32 screen B32; |
| CARD32 visual B32; |
| CARD32 context B32; |
| } xXF86DRICreateContextReq; |
| #define sz_xXF86DRICreateContextReq 16 |
| |
| typedef struct |
| { |
| BYTE type; /* X_Reply */ |
| BOOL pad1; |
| CARD16 sequenceNumber B16; |
| CARD32 length B32; |
| CARD32 hHWContext B32; |
| CARD32 pad2 B32; |
| CARD32 pad3 B32; |
| CARD32 pad4 B32; |
| CARD32 pad5 B32; |
| CARD32 pad6 B32; |
| } xXF86DRICreateContextReply; |
| #define sz_xXF86DRICreateContextReply 32 |
| |
| typedef struct _XF86DRIDestroyContext |
| { |
| CARD8 reqType; /* always DRIReqCode */ |
| CARD8 driReqType; /* always X_DRIDestroyContext */ |
| CARD16 length B16; |
| CARD32 screen B32; |
| CARD32 context B32; |
| } xXF86DRIDestroyContextReq; |
| #define sz_xXF86DRIDestroyContextReq 12 |
| |
| typedef struct _XF86DRICreateDrawable |
| { |
| CARD8 reqType; /* always DRIReqCode */ |
| CARD8 driReqType; /* always X_DRICreateDrawable */ |
| CARD16 length B16; |
| CARD32 screen B32; |
| CARD32 drawable B32; |
| } xXF86DRICreateDrawableReq; |
| #define sz_xXF86DRICreateDrawableReq 12 |
| |
| typedef struct |
| { |
| BYTE type; /* X_Reply */ |
| BOOL pad1; |
| CARD16 sequenceNumber B16; |
| CARD32 length B32; |
| CARD32 hHWDrawable B32; |
| CARD32 pad2 B32; |
| CARD32 pad3 B32; |
| CARD32 pad4 B32; |
| CARD32 pad5 B32; |
| CARD32 pad6 B32; |
| } xXF86DRICreateDrawableReply; |
| #define sz_xXF86DRICreateDrawableReply 32 |
| |
| typedef struct _XF86DRIDestroyDrawable |
| { |
| CARD8 reqType; /* always DRIReqCode */ |
| CARD8 driReqType; /* always X_DRIDestroyDrawable */ |
| CARD16 length B16; |
| CARD32 screen B32; |
| CARD32 drawable B32; |
| } xXF86DRIDestroyDrawableReq; |
| #define sz_xXF86DRIDestroyDrawableReq 12 |
| |
| typedef struct _XF86DRIGetDrawableInfo |
| { |
| CARD8 reqType; /* always DRIReqCode */ |
| CARD8 driReqType; /* always X_DRIGetDrawableInfo */ |
| CARD16 length B16; |
| CARD32 screen B32; |
| CARD32 drawable B32; |
| } xXF86DRIGetDrawableInfoReq; |
| #define sz_xXF86DRIGetDrawableInfoReq 12 |
| |
| typedef struct |
| { |
| BYTE type; /* X_Reply */ |
| BOOL pad1; |
| CARD16 sequenceNumber B16; |
| CARD32 length B32; |
| CARD32 drawableTableIndex B32; |
| CARD32 drawableTableStamp B32; |
| INT16 drawableX B16; |
| INT16 drawableY B16; |
| INT16 drawableWidth B16; |
| INT16 drawableHeight B16; |
| CARD32 numClipRects B32; |
| INT16 backX B16; |
| INT16 backY B16; |
| CARD32 numBackClipRects B32; |
| } xXF86DRIGetDrawableInfoReply; |
| |
| #define sz_xXF86DRIGetDrawableInfoReply 36 |
| |
| |
| typedef struct _XF86DRIGetDeviceInfo |
| { |
| CARD8 reqType; /* always DRIReqCode */ |
| CARD8 driReqType; /* always X_DRIGetDeviceInfo */ |
| CARD16 length B16; |
| CARD32 screen B32; |
| } xXF86DRIGetDeviceInfoReq; |
| #define sz_xXF86DRIGetDeviceInfoReq 8 |
| |
| typedef struct |
| { |
| BYTE type; /* X_Reply */ |
| BOOL pad1; |
| CARD16 sequenceNumber B16; |
| CARD32 length B32; |
| CARD32 hFrameBufferLow B32; |
| CARD32 hFrameBufferHigh B32; |
| CARD32 framebufferOrigin B32; |
| CARD32 framebufferSize B32; |
| CARD32 framebufferStride B32; |
| CARD32 devPrivateSize B32; |
| } xXF86DRIGetDeviceInfoReply; |
| #define sz_xXF86DRIGetDeviceInfoReply 32 |
| |
| typedef struct _XF86DRIOpenFullScreen |
| { |
| CARD8 reqType; /* always DRIReqCode */ |
| CARD8 driReqType; /* always X_DRIOpenFullScreen */ |
| CARD16 length B16; |
| CARD32 screen B32; |
| CARD32 drawable B32; |
| } xXF86DRIOpenFullScreenReq; |
| #define sz_xXF86DRIOpenFullScreenReq 12 |
| |
| typedef struct |
| { |
| BYTE type; |
| BOOL pad1; |
| CARD16 sequenceNumber B16; |
| CARD32 length B32; |
| CARD32 isFullScreen B32; |
| CARD32 pad2 B32; |
| CARD32 pad3 B32; |
| CARD32 pad4 B32; |
| CARD32 pad5 B32; |
| CARD32 pad6 B32; |
| } xXF86DRIOpenFullScreenReply; |
| #define sz_xXF86DRIOpenFullScreenReply 32 |
| |
| typedef struct _XF86DRICloseFullScreen |
| { |
| CARD8 reqType; /* always DRIReqCode */ |
| CARD8 driReqType; /* always X_DRICloseFullScreen */ |
| CARD16 length B16; |
| CARD32 screen B32; |
| CARD32 drawable B32; |
| } xXF86DRICloseFullScreenReq; |
| #define sz_xXF86DRICloseFullScreenReq 12 |
| |
| typedef struct |
| { |
| BYTE type; |
| BOOL pad1; |
| CARD16 sequenceNumber B16; |
| CARD32 length B32; |
| CARD32 pad2 B32; |
| CARD32 pad3 B32; |
| CARD32 pad4 B32; |
| CARD32 pad5 B32; |
| CARD32 pad6 B32; |
| CARD32 pad7 B32; |
| } xXF86DRICloseFullScreenReply; |
| #define sz_xXF86DRICloseFullScreenReply 32 |
| |
| |
| #endif /* _XF86DRISTR_H_ */ |