dri3.xml revision d5c9b07b
1f591e195Smrg<?xml version="1.0" encoding="utf-8"?>
2f591e195Smrg<!--
3f591e195Smrg
4f591e195SmrgCopyright © 2013 Keith Packard
5f591e195Smrg
6f591e195SmrgPermission to use, copy, modify, distribute, and sell this software and its
7f591e195Smrgdocumentation for any purpose is hereby granted without fee, provided that
8f591e195Smrgthe above copyright notice appear in all copies and that both that copyright
9f591e195Smrgnotice and this permission notice appear in supporting documentation, and
10f591e195Smrgthat the name of the copyright holders not be used in advertising or
11f591e195Smrgpublicity pertaining to distribution of the software without specific,
12f591e195Smrgwritten prior permission.  The copyright holders make no representations
13f591e195Smrgabout the suitability of this software for any purpose.  It is provided "as
14f591e195Smrgis" without express or implied warranty.
15f591e195Smrg
16f591e195SmrgTHE COPYRIGHT HOLDERS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
17f591e195SmrgINCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
18f591e195SmrgEVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY SPECIAL, INDIRECT OR
19f591e195SmrgCONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
20f591e195SmrgDATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
21f591e195SmrgTORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
22f591e195SmrgOF THIS SOFTWARE.
23f591e195Smrg-->
24f591e195Smrg
25f591e195Smrg<xcb header="dri3" extension-xname="DRI3" extension-name="DRI3"
26d5c9b07bSmrg  major-version="1" minor-version="3">
27f591e195Smrg  <import>xproto</import>
28f591e195Smrg
29f591e195Smrg  <!-- Types -->
30f591e195Smrg
31f591e195Smrg  <!-- Requests -->
32f591e195Smrg  <request name="QueryVersion" opcode="0">
33f591e195Smrg    <field type="CARD32" name="major_version" />
34f591e195Smrg    <field type="CARD32" name="minor_version" />
35f591e195Smrg    <reply>
36f591e195Smrg      <pad bytes="1" />
37f591e195Smrg      <field type="CARD32" name="major_version" />
38f591e195Smrg      <field type="CARD32" name="minor_version" />
39f591e195Smrg    </reply>
40f591e195Smrg  </request>
41f591e195Smrg
42f591e195Smrg  <request name="Open" opcode="1">
43f591e195Smrg    <field type="DRAWABLE" name="drawable" />
44f591e195Smrg    <field type="CARD32" name="provider" />
45f591e195Smrg    <reply>
46f591e195Smrg      <field type="CARD8" name="nfd"/>
47f591e195Smrg      <fd name="device_fd" />
48f591e195Smrg      <pad bytes="24" />
49f591e195Smrg    </reply>
50f591e195Smrg  </request>
51f591e195Smrg
52f591e195Smrg  <request name="PixmapFromBuffer" opcode="2">
53f591e195Smrg    <field type="PIXMAP" name="pixmap" />
54f591e195Smrg    <field type="DRAWABLE" name="drawable" />
55f591e195Smrg    <field type="CARD32" name="size" />
56f591e195Smrg    <field type="CARD16" name="width" />
57f591e195Smrg    <field type="CARD16" name="height" />
58f591e195Smrg    <field type="CARD16" name="stride" />
59f591e195Smrg    <field type="CARD8" name="depth" />
60f591e195Smrg    <field type="CARD8" name="bpp" />
61f591e195Smrg    <fd name="pixmap_fd" />
62f591e195Smrg  </request>
63f591e195Smrg
64f591e195Smrg  <request name="BufferFromPixmap" opcode="3">
65f591e195Smrg    <field type="PIXMAP" name="pixmap" />
66f591e195Smrg    <reply>
67f591e195Smrg      <field type="CARD8" name="nfd"/>
68f591e195Smrg      <field type="CARD32" name="size" />
69f591e195Smrg      <field type="CARD16" name="width" />
70f591e195Smrg      <field type="CARD16" name="height" />
71f591e195Smrg      <field type="CARD16" name="stride" />
72f591e195Smrg      <field type="CARD8" name="depth" />
73f591e195Smrg      <field type="CARD8" name="bpp" />
74f591e195Smrg      <fd name="pixmap_fd" />
75f591e195Smrg      <pad bytes="12"/>
76f591e195Smrg    </reply>
77f591e195Smrg  </request>
78f591e195Smrg
79f591e195Smrg  <request name="FenceFromFD" opcode="4">
80f591e195Smrg    <field type="DRAWABLE" name="drawable" />
81f591e195Smrg    <field type="CARD32" name="fence"/>
82f591e195Smrg    <field type="BOOL" name="initially_triggered"/>
83f591e195Smrg    <pad bytes="3"/>
84f591e195Smrg    <fd name="fence_fd"/>
85f591e195Smrg  </request>
86f591e195Smrg
87f591e195Smrg  <request name="FDFromFence" opcode="5">
88f591e195Smrg    <field type="DRAWABLE" name="drawable" />
89f591e195Smrg    <field type="CARD32" name="fence"/>
90f591e195Smrg    <reply>
91f591e195Smrg      <field type="CARD8" name="nfd"/>
92f591e195Smrg      <fd name="fence_fd" />
93f591e195Smrg      <pad bytes="24"/>
94f591e195Smrg    </reply>
95f591e195Smrg  </request>
96f591e195Smrg
97a27842ffSmrg  <!-- v1.2 -->
98a27842ffSmrg  <request name="GetSupportedModifiers" opcode="6">
99a27842ffSmrg    <field type="CARD32" name="window" />
100a27842ffSmrg    <field type="CARD8" name="depth"/>
101a27842ffSmrg    <field type="CARD8" name="bpp"/>
102a27842ffSmrg    <pad bytes="2"/>
103a27842ffSmrg    <reply>
104a27842ffSmrg      <required_start_align align="8" />
105a27842ffSmrg      <pad bytes="1" />
106a27842ffSmrg      <field type="CARD32" name="num_window_modifiers" />
107a27842ffSmrg      <field type="CARD32" name="num_screen_modifiers" />
108a27842ffSmrg      <pad bytes="16" />
109a27842ffSmrg      <list type="CARD64" name="window_modifiers">
110a27842ffSmrg        <fieldref>num_window_modifiers</fieldref>
111a27842ffSmrg      </list>
112a27842ffSmrg      <list type="CARD64" name="screen_modifiers">
113a27842ffSmrg        <fieldref>num_screen_modifiers</fieldref>
114a27842ffSmrg      </list>
115a27842ffSmrg    </reply>
116a27842ffSmrg  </request>
117a27842ffSmrg
118a27842ffSmrg  <request name="PixmapFromBuffers" opcode="7">
119a27842ffSmrg    <required_start_align align="8" />
120a27842ffSmrg    <field type="PIXMAP" name="pixmap" />
121a27842ffSmrg    <field type="WINDOW" name="window" />
122a27842ffSmrg    <field type="CARD8" name="num_buffers" />
123a27842ffSmrg    <pad bytes="3" />
124a27842ffSmrg    <field type="CARD16" name="width" />
125a27842ffSmrg    <field type="CARD16" name="height" />
126a27842ffSmrg    <field type="CARD32" name="stride0" />
127a27842ffSmrg    <field type="CARD32" name="offset0" />
128a27842ffSmrg    <field type="CARD32" name="stride1" />
129a27842ffSmrg    <field type="CARD32" name="offset1" />
130a27842ffSmrg    <field type="CARD32" name="stride2" />
131a27842ffSmrg    <field type="CARD32" name="offset2" />
132a27842ffSmrg    <field type="CARD32" name="stride3" />
133a27842ffSmrg    <field type="CARD32" name="offset3" />
134a27842ffSmrg    <field type="CARD8" name="depth" />
135a27842ffSmrg    <field type="CARD8" name="bpp" />
136a27842ffSmrg    <pad bytes="2" />
137a27842ffSmrg    <field type="CARD64" name="modifier" />
138a27842ffSmrg    <list type="fd" name="buffers">
139a27842ffSmrg      <fieldref>num_buffers</fieldref>
140a27842ffSmrg    </list>
141a27842ffSmrg  </request>
142a27842ffSmrg
143a27842ffSmrg  <request name="BuffersFromPixmap" opcode="8">
144a27842ffSmrg    <field type="PIXMAP" name="pixmap" />
145a27842ffSmrg    <reply>
146a27842ffSmrg      <required_start_align align="8" />
147a27842ffSmrg      <field type="CARD8" name="nfd"/>
148a27842ffSmrg      <field type="CARD16" name="width" />
149a27842ffSmrg      <field type="CARD16" name="height" />
150a27842ffSmrg      <pad bytes="4"/>
151a27842ffSmrg      <field type="CARD64" name="modifier" />
152a27842ffSmrg      <field type="CARD8" name="depth" />
153a27842ffSmrg      <field type="CARD8" name="bpp" />
154a27842ffSmrg      <pad bytes="6"/>
155a27842ffSmrg      <list type="CARD32" name="strides">
156a27842ffSmrg        <fieldref>nfd</fieldref>
157a27842ffSmrg      </list>
158a27842ffSmrg      <list type="CARD32" name="offsets">
159a27842ffSmrg        <fieldref>nfd</fieldref>
160a27842ffSmrg      </list>
161a27842ffSmrg      <list type="fd" name="buffers">
162a27842ffSmrg        <fieldref>nfd</fieldref>
163a27842ffSmrg      </list>
164a27842ffSmrg    </reply>
165a27842ffSmrg  </request>
166d5c9b07bSmrg
167d5c9b07bSmrg  <!-- v1.3 -->
168d5c9b07bSmrg  <request name="SetDRMDeviceInUse" opcode="9">
169d5c9b07bSmrg    <field type="WINDOW" name="window" />
170d5c9b07bSmrg    <field type="CARD32" name="drmMajor" />
171d5c9b07bSmrg    <field type="CARD32" name="drmMinor" />
172d5c9b07bSmrg  </request>
173f591e195Smrg</xcb>
174