1cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson/**************************************************************************
2cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson
3cb3610e37c4c0a40520441b8515d044dabcc8854Adam JacksonCopyright 1998-1999 Precision Insight, Inc., Cedar Park, Texas.
4cb3610e37c4c0a40520441b8515d044dabcc8854Adam JacksonCopyright 2000 VA Linux Systems, Inc.
5cb3610e37c4c0a40520441b8515d044dabcc8854Adam JacksonAll Rights Reserved.
6cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson
7cb3610e37c4c0a40520441b8515d044dabcc8854Adam JacksonPermission is hereby granted, free of charge, to any person obtaining a
8cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jacksoncopy of this software and associated documentation files (the
9cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson"Software"), to deal in the Software without restriction, including
10cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jacksonwithout limitation the rights to use, copy, modify, merge, publish,
11cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jacksondistribute, sub license, and/or sell copies of the Software, and to
12cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jacksonpermit persons to whom the Software is furnished to do so, subject to
13cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jacksonthe following conditions:
14cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson
15cb3610e37c4c0a40520441b8515d044dabcc8854Adam JacksonThe above copyright notice and this permission notice (including the
16cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jacksonnext paragraph) shall be included in all copies or substantial portions
17cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jacksonof the Software.
18cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson
19cb3610e37c4c0a40520441b8515d044dabcc8854Adam JacksonTHE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
20cb3610e37c4c0a40520441b8515d044dabcc8854Adam JacksonOR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
21cb3610e37c4c0a40520441b8515d044dabcc8854Adam JacksonMERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
22cb3610e37c4c0a40520441b8515d044dabcc8854Adam JacksonIN NO EVENT SHALL PRECISION INSIGHT AND/OR ITS SUPPLIERS BE LIABLE FOR
23cb3610e37c4c0a40520441b8515d044dabcc8854Adam JacksonANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
24cb3610e37c4c0a40520441b8515d044dabcc8854Adam JacksonTORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
25cb3610e37c4c0a40520441b8515d044dabcc8854Adam JacksonSOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
26cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson
27cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson**************************************************************************/
28cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson
29cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson/*
30cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson * Authors:
31cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson *   Kevin E. Martin <martin@valinux.com>
32cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson *   Jens Owen <jens@tungstengraphics.com>
33cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson *   Rickard E. (Rik) Fiath <faith@valinux.com>
34cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson *
35cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson */
36cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson
37cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson#ifndef _XF86DRISTR_H_
38cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson#define _XF86DRISTR_H_
39cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson
40cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson#include "xf86dri.h"
41cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson
42cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson#define XF86DRINAME "XFree86-DRI"
43cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson
44cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson/* The DRI version number.  This was originally set to be the same of the
45cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson * XFree86 version number.  However, this version is really indepedent of
46cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson * the XFree86 version.
47cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson *
48cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson * Version History:
49cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson *    4.0.0: Original
50cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson *    4.0.1: Patch to bump clipstamp when windows are destroyed, 28 May 02
51cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson *    4.1.0: Add transition from single to multi in DRMInfo rec, 24 Jun 02
52cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson */
53cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson#define XF86DRI_MAJOR_VERSION	4
54cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson#define XF86DRI_MINOR_VERSION	1
55cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson#define XF86DRI_PATCH_VERSION	0
56cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson
574a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóftypedef struct _XF86DRIQueryVersion
584a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf{
594a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD8 reqType;               /* always DRIReqCode */
604a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD8 driReqType;            /* always X_DRIQueryVersion */
614a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD16 length B16;
62cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson} xXF86DRIQueryVersionReq;
63cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson#define sz_xXF86DRIQueryVersionReq	4
64cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson
654a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóftypedef struct
664a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf{
674a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   BYTE type;                   /* X_Reply */
684a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   BOOL pad1;
694a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD16 sequenceNumber B16;
704a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 length B32;
714a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD16 majorVersion B16;     /* major version of DRI protocol */
724a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD16 minorVersion B16;     /* minor version of DRI protocol */
734a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 patchVersion B32;     /* patch version of DRI protocol */
744a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 pad3 B32;
754a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 pad4 B32;
764a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 pad5 B32;
774a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 pad6 B32;
78cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson} xXF86DRIQueryVersionReply;
79cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson#define sz_xXF86DRIQueryVersionReply	32
80cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson
814a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóftypedef struct _XF86DRIQueryDirectRenderingCapable
824a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf{
834a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD8 reqType;               /* always DRIReqCode */
844a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD8 driReqType;            /* X_DRIQueryDirectRenderingCapable */
854a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD16 length B16;
864a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 screen B32;
87cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson} xXF86DRIQueryDirectRenderingCapableReq;
88cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson#define sz_xXF86DRIQueryDirectRenderingCapableReq	8
89cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson
904a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóftypedef struct
914a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf{
924a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   BYTE type;                   /* X_Reply */
934a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   BOOL pad1;
944a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD16 sequenceNumber B16;
954a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 length B32;
964a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   BOOL isCapable;
974a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   BOOL pad2;
984a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   BOOL pad3;
994a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   BOOL pad4;
1004a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 pad5 B32;
1014a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 pad6 B32;
1024a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 pad7 B32;
1034a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 pad8 B32;
1044a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 pad9 B32;
105cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson} xXF86DRIQueryDirectRenderingCapableReply;
106cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson#define sz_xXF86DRIQueryDirectRenderingCapableReply	32
107cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson
1084a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóftypedef struct _XF86DRIOpenConnection
1094a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf{
1104a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD8 reqType;               /* always DRIReqCode */
1114a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD8 driReqType;            /* always X_DRIOpenConnection */
1124a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD16 length B16;
1134a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 screen B32;
114cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson} xXF86DRIOpenConnectionReq;
115cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson#define sz_xXF86DRIOpenConnectionReq	8
116cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson
1174a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóftypedef struct
1184a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf{
1194a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   BYTE type;                   /* X_Reply */
1204a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   BOOL pad1;
1214a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD16 sequenceNumber B16;
1224a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 length B32;
1234a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 hSAREALow B32;
1244a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 hSAREAHigh B32;
1254a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 busIdStringLength B32;
1264a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 pad6 B32;
1274a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 pad7 B32;
1284a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 pad8 B32;
129cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson} xXF86DRIOpenConnectionReply;
130cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson#define sz_xXF86DRIOpenConnectionReply	32
131cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson
1324a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóftypedef struct _XF86DRIAuthConnection
1334a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf{
1344a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD8 reqType;               /* always DRIReqCode */
1354a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD8 driReqType;            /* always X_DRICloseConnection */
1364a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD16 length B16;
1374a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 screen B32;
1384a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 magic B32;
139cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson} xXF86DRIAuthConnectionReq;
140cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson#define sz_xXF86DRIAuthConnectionReq	12
141cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson
1424a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóftypedef struct
1434a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf{
1444a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   BYTE type;
1454a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   BOOL pad1;
1464a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD16 sequenceNumber B16;
1474a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 length B32;
1484a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 authenticated B32;
1494a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 pad2 B32;
1504a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 pad3 B32;
1514a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 pad4 B32;
1524a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 pad5 B32;
1534a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 pad6 B32;
154cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson} xXF86DRIAuthConnectionReply;
155cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson#define zx_xXF86DRIAuthConnectionReply  32
156cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson
1574a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóftypedef struct _XF86DRICloseConnection
1584a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf{
1594a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD8 reqType;               /* always DRIReqCode */
1604a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD8 driReqType;            /* always X_DRICloseConnection */
1614a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD16 length B16;
1624a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 screen B32;
163cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson} xXF86DRICloseConnectionReq;
164cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson#define sz_xXF86DRICloseConnectionReq	8
165cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson
1664a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóftypedef struct _XF86DRIGetClientDriverName
1674a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf{
1684a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD8 reqType;               /* always DRIReqCode */
1694a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD8 driReqType;            /* always X_DRIGetClientDriverName */
1704a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD16 length B16;
1714a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 screen B32;
172cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson} xXF86DRIGetClientDriverNameReq;
173cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson#define sz_xXF86DRIGetClientDriverNameReq	8
174cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson
1754a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóftypedef struct
1764a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf{
1774a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   BYTE type;                   /* X_Reply */
1784a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   BOOL pad1;
1794a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD16 sequenceNumber B16;
1804a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 length B32;
1814a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 ddxDriverMajorVersion B32;
1824a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 ddxDriverMinorVersion B32;
1834a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 ddxDriverPatchVersion B32;
1844a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 clientDriverNameLength B32;
1854a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 pad5 B32;
1864a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 pad6 B32;
187cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson} xXF86DRIGetClientDriverNameReply;
188cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson#define sz_xXF86DRIGetClientDriverNameReply	32
189cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson
1904a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóftypedef struct _XF86DRICreateContext
1914a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf{
1924a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD8 reqType;               /* always DRIReqCode */
1934a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD8 driReqType;            /* always X_DRICreateContext */
1944a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD16 length B16;
1954a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 screen B32;
1964a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 visual B32;
1974a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 context B32;
198cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson} xXF86DRICreateContextReq;
199cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson#define sz_xXF86DRICreateContextReq	16
200cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson
2014a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóftypedef struct
2024a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf{
2034a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   BYTE type;                   /* X_Reply */
2044a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   BOOL pad1;
2054a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD16 sequenceNumber B16;
2064a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 length B32;
2074a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 hHWContext B32;
2084a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 pad2 B32;
2094a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 pad3 B32;
2104a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 pad4 B32;
2114a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 pad5 B32;
2124a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 pad6 B32;
213cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson} xXF86DRICreateContextReply;
214cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson#define sz_xXF86DRICreateContextReply	32
215cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson
2164a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóftypedef struct _XF86DRIDestroyContext
2174a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf{
2184a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD8 reqType;               /* always DRIReqCode */
2194a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD8 driReqType;            /* always X_DRIDestroyContext */
2204a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD16 length B16;
2214a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 screen B32;
2224a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 context B32;
223cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson} xXF86DRIDestroyContextReq;
224cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson#define sz_xXF86DRIDestroyContextReq	12
225cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson
2264a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóftypedef struct _XF86DRICreateDrawable
2274a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf{
2284a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD8 reqType;               /* always DRIReqCode */
2294a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD8 driReqType;            /* always X_DRICreateDrawable */
2304a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD16 length B16;
2314a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 screen B32;
2324a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 drawable B32;
233cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson} xXF86DRICreateDrawableReq;
234cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson#define sz_xXF86DRICreateDrawableReq	12
235cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson
2364a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóftypedef struct
2374a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf{
2384a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   BYTE type;                   /* X_Reply */
2394a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   BOOL pad1;
2404a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD16 sequenceNumber B16;
2414a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 length B32;
2424a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 hHWDrawable B32;
2434a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 pad2 B32;
2444a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 pad3 B32;
2454a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 pad4 B32;
2464a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 pad5 B32;
2474a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 pad6 B32;
248cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson} xXF86DRICreateDrawableReply;
249cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson#define sz_xXF86DRICreateDrawableReply	32
250cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson
2514a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóftypedef struct _XF86DRIDestroyDrawable
2524a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf{
2534a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD8 reqType;               /* always DRIReqCode */
2544a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD8 driReqType;            /* always X_DRIDestroyDrawable */
2554a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD16 length B16;
2564a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 screen B32;
2574a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 drawable B32;
258cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson} xXF86DRIDestroyDrawableReq;
259cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson#define sz_xXF86DRIDestroyDrawableReq	12
260cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson
2614a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóftypedef struct _XF86DRIGetDrawableInfo
2624a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf{
2634a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD8 reqType;               /* always DRIReqCode */
2644a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD8 driReqType;            /* always X_DRIGetDrawableInfo */
2654a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD16 length B16;
2664a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 screen B32;
2674a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 drawable B32;
268cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson} xXF86DRIGetDrawableInfoReq;
269cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson#define sz_xXF86DRIGetDrawableInfoReq	12
270cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson
2714a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóftypedef struct
2724a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf{
2734a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   BYTE type;                   /* X_Reply */
2744a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   BOOL pad1;
2754a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD16 sequenceNumber B16;
2764a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 length B32;
2774a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 drawableTableIndex B32;
2784a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 drawableTableStamp B32;
2794a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   INT16 drawableX B16;
2804a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   INT16 drawableY B16;
2814a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   INT16 drawableWidth B16;
2824a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   INT16 drawableHeight B16;
2834a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 numClipRects B32;
2844a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   INT16 backX B16;
2854a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   INT16 backY B16;
2864a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 numBackClipRects B32;
287cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson} xXF86DRIGetDrawableInfoReply;
288cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson
289cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson#define sz_xXF86DRIGetDrawableInfoReply	36
290cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson
291cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson
2924a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóftypedef struct _XF86DRIGetDeviceInfo
2934a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf{
2944a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD8 reqType;               /* always DRIReqCode */
2954a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD8 driReqType;            /* always X_DRIGetDeviceInfo */
2964a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD16 length B16;
2974a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 screen B32;
298cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson} xXF86DRIGetDeviceInfoReq;
299cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson#define sz_xXF86DRIGetDeviceInfoReq	8
300cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson
3014a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóftypedef struct
3024a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf{
3034a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   BYTE type;                   /* X_Reply */
3044a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   BOOL pad1;
3054a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD16 sequenceNumber B16;
3064a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 length B32;
3074a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 hFrameBufferLow B32;
3084a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 hFrameBufferHigh B32;
3094a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 framebufferOrigin B32;
3104a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 framebufferSize B32;
3114a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 framebufferStride B32;
3124a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 devPrivateSize B32;
313cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson} xXF86DRIGetDeviceInfoReply;
314cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson#define sz_xXF86DRIGetDeviceInfoReply	32
315cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson
3164a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóftypedef struct _XF86DRIOpenFullScreen
3174a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf{
3184a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD8 reqType;               /* always DRIReqCode */
3194a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD8 driReqType;            /* always X_DRIOpenFullScreen */
3204a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD16 length B16;
3214a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 screen B32;
3224a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 drawable B32;
323cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson} xXF86DRIOpenFullScreenReq;
324cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson#define sz_xXF86DRIOpenFullScreenReq    12
325cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson
3264a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóftypedef struct
3274a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf{
3284a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   BYTE type;
3294a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   BOOL pad1;
3304a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD16 sequenceNumber B16;
3314a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 length B32;
3324a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 isFullScreen B32;
3334a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 pad2 B32;
3344a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 pad3 B32;
3354a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 pad4 B32;
3364a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 pad5 B32;
3374a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 pad6 B32;
338cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson} xXF86DRIOpenFullScreenReply;
339cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson#define sz_xXF86DRIOpenFullScreenReply  32
340cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson
3414a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóftypedef struct _XF86DRICloseFullScreen
3424a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf{
3434a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD8 reqType;               /* always DRIReqCode */
3444a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD8 driReqType;            /* always X_DRICloseFullScreen */
3454a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD16 length B16;
3464a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 screen B32;
3474a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 drawable B32;
348cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson} xXF86DRICloseFullScreenReq;
349cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson#define sz_xXF86DRICloseFullScreenReq   12
350cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson
3514a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóftypedef struct
3524a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf{
3534a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   BYTE type;
3544a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   BOOL pad1;
3554a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD16 sequenceNumber B16;
3564a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 length B32;
3574a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 pad2 B32;
3584a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 pad3 B32;
3594a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 pad4 B32;
3604a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 pad5 B32;
3614a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 pad6 B32;
3624a3ccc6ca54d78dbc7e6737b80b63258081a12dfRALOVICH, Kristóf   CARD32 pad7 B32;
363cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson} xXF86DRICloseFullScreenReply;
364cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson#define sz_xXF86DRICloseFullScreenReply  32
365cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson
366cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson
367cb3610e37c4c0a40520441b8515d044dabcc8854Adam Jackson#endif /* _XF86DRISTR_H_ */
368