[Xcb] [PATCH] Add DRI2 protocol, based off of dri2proto.h and the server code.
Eric Anholt
eric at anholt.net
Thu Oct 15 14:25:46 PDT 2009
---
src/Makefile.am | 1 +
src/dri2.xml | 136 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 137 insertions(+), 0 deletions(-)
create mode 100644 src/dri2.xml
diff --git a/src/Makefile.am b/src/Makefile.am
index 3caaed2..0f0dfbc 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -5,6 +5,7 @@ xcbinclude_HEADERS = \
composite.xml \
damage.xml \
dpms.xml \
+ dri2.xml \
glx.xml \
randr.xml \
record.xml \
diff --git a/src/dri2.xml b/src/dri2.xml
new file mode 100644
index 0000000..4d77f72
--- /dev/null
+++ b/src/dri2.xml
@@ -0,0 +1,136 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+Copyright (C) 2005 Jeremy Kolb.
+All Rights Reserved.
+
+Permission is hereby granted, free of charge, to any person ob/Sintaining 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, sublicense, 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 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 NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS 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.
+
+Except as contained in this notice, the names of the authors or their
+institutions shall not be used in advertising or otherwise to promote the
+sale, use or other dealings in this Software without prior written
+authorization from the authors.
+-->
+
+<xcb header="dri2" extension-xname="DRI2" extension-name="DRI2"
+ major-version="1" minor-version="1">
+
+ <!-- Types -->
+
+ <struct name="DRI2Buffer">
+ <field type="CARD32" name="attachment" />
+ <field type="CARD32" name="name" />
+ <field type="CARD32" name="pitch" />
+ <field type="CARD32" name="cpp" />
+ <field type="CARD32" name="flags" />
+ </struct>
+
+ <struct name="GetBuffersWithFormatAttachment">
+ <field type="CARD32" name="attachment" />
+ <field type="CARD32" name="format" />
+ </struct>
+
+ <!-- Requests -->
+ <request name="QueryVersion" opcode="0">
+ <field type="CARD32" name="major_version" />
+ <field type="CARD32" name="minor_version" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="major_version" />
+ <field type="CARD32" name="minor_version" />
+ <pad bytes="16" />
+ </reply>
+ </request>
+
+ <request name="Connect" opcode="1">
+ <field type="CARD32" name="window" />
+ <field type="CARD32" name="driver_type" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="driver_name_length" />
+ <field type="CARD32" name="device_name_length" />
+ <pad bytes="16" />
+ <list type="char" name="driver_name">
+ <fieldref>driver_name_length</fieldref>
+ </list>
+ <list type="char" name="device_name">
+ <fieldref>device_name_length</fieldref>
+ </list>
+ </reply>
+ </request>
+
+ <request name="Authenticate" opcode="2">
+ <field type="CARD32" name="window" />
+ <field type="CARD32" name="magic" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="authenticated" />
+ <pad bytes="20" />
+ </reply>
+ </request>
+
+ <request name="CreateDrawable" opcode="3">
+ <field type="CARD32" name="drawable" />
+ </request>
+
+ <request name="DestroyDrawable" opcode="4">
+ <field type="CARD32" name="drawable" />
+ </request>
+
+ <request name="GetBuffers" opcode="5">
+ <field type="CARD32" name="drawable" />
+ <field type="CARD32" name="count" />
+ <list type="CARD32" name="attachments" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="width" />
+ <field type="CARD32" name="height" />
+ <field type="CARD32" name="count" />
+ <list type="DRI2Buffer" name="buffers">
+ <fieldref>count</fieldref>
+ </list>
+ <pad bytes="12" />
+ </reply>
+ </request>
+
+ <request name="CopyRegion" opcode="6">
+ <field type="CARD32" name="drawable" />
+ <field type="CARD32" name="region" />
+ <field type="CARD32" name="dest" />
+ <field type="CARD32" name="src" />
+ <reply>
+ <pad bytes="1" />
+ <pad bytes="24" />
+ </reply>
+ </request>
+
+ <request name="GetBuffersWithFormat" opcode="7">
+ <field type="CARD32" name="drawable" />
+ <field type="CARD32" name="count" />
+ <list type="GetBuffersWithFormatAttachment" name="attachments" />
+ <reply>
+ <pad bytes="1" />
+ <field type="CARD32" name="width" />
+ <field type="CARD32" name="height" />
+ <field type="CARD32" name="count" />
+ <list type="DRI2Buffer" name="buffers">
+ <fieldref>count</fieldref>
+ </list>
+ <pad bytes="12" />
+ </reply>
+ </request>
+</xcb>
--
1.6.4.3
More information about the Xcb
mailing list