[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

libdrm: Changes to 'ubuntu'



 ChangeLog                         |  273 ++
 configure.ac                      |    4 
 debian/README.source              |    6 
 debian/changelog                  |   18 
 debian/libdrm-intel1.symbols      |    7 
 debian/libdrm2.symbols            |    5 
 debian/rules                      |    4 
 include/drm/Makefile.am           |    1 
 include/drm/drm.h                 |    4 
 include/drm/drm_fourcc.h          |  130 +
 include/drm/drm_mode.h            |   64 
 include/drm/i915_drm.h            |    6 
 intel/.gitignore                  |    1 
 intel/Makefile.am                 |   30 
 intel/intel_bufmgr.h              |   14 
 intel/intel_bufmgr_gem.c          |   19 
 intel/intel_chipset.h             |  112 -
 intel/intel_decode.c              | 3691 ++++++++++++++++++++++++++++++++++++++
 intel/test_decode.c               |  191 +
 intel/tests/.gitignore            |    1 
 intel/tests/gen4-3d.batch         |binary
 intel/tests/gen4-3d.batch-ref.txt |  488 +++++
 intel/tests/gen4-3d.batch.sh      |    1 
 intel/tests/gen5-3d.batch         |binary
 intel/tests/gen5-3d.batch-ref.txt |  512 +++++
 intel/tests/gen5-3d.batch.sh      |    1 
 intel/tests/gen6-3d.batch         |binary
 intel/tests/gen6-3d.batch-ref.txt |  990 ++++++++++
 intel/tests/gen6-3d.batch.sh      |    1 
 intel/tests/gen7-3d.batch         |binary
 intel/tests/gen7-3d.batch-ref.txt | 1350 +++++++++++++
 intel/tests/gen7-3d.batch.sh      |    1 
 intel/tests/gm45-3d.batch         |binary
 intel/tests/gm45-3d.batch-ref.txt |  488 +++++
 intel/tests/gm45-3d.batch.sh      |    1 
 intel/tests/test-batch.sh         |   20 
 tests/gem_flink.c                 |    7 
 xf86drmMode.c                     |  153 +
 xf86drmMode.h                     |   33 
 39 files changed, 8575 insertions(+), 52 deletions(-)

New commits:
commit 389cc25e58ebf6d7ea0ae4e5c07b4146ec91726f
Author: Robert Hooker <sarvatt@ubuntu.com>
Date:   Fri Jan 6 17:01:25 2012 -0500

    Bump changelog.

diff --git a/debian/changelog b/debian/changelog
index c75cb65..75990a9 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,13 @@
+libdrm (2.4.30-1ubuntu1) precise; urgency=low
+
+  * Merge from Debian unstable, remaining changes:
+    - debian/rules
+    - debian/control:
+      + Build libdrm-intel1 everywhere rather than just {i386,amd64}
+        for Plymouth
+
+ -- Robert Hooker <sarvatt@ubuntu.com>  Fri, 06 Jan 2012 17:00:29 -0500
+
 libdrm (2.4.30-1) unstable; urgency=low
 
   * New upstream release.

commit e91400b4219caf5d63a59e40c4585308ed30326c
Author: Cyril Brulebois <kibi@debian.org>
Date:   Fri Jan 6 20:04:48 2012 +0100

    Upload to unstable.

diff --git a/debian/changelog b/debian/changelog
index 9f24159..3b92e88 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,10 +1,10 @@
-libdrm (2.4.30-1) UNRELEASED; urgency=low
+libdrm (2.4.30-1) unstable; urgency=low
 
   * New upstream release.
   * Bump libdrm2's and libdrm-intel1's symbols and shlibs accordingly.
   * Document the symlink dance when building from git in README.source.
 
- -- Cyril Brulebois <kibi@debian.org>  Fri, 06 Jan 2012 19:47:07 +0100
+ -- Cyril Brulebois <kibi@debian.org>  Fri, 06 Jan 2012 20:04:37 +0100
 
 libdrm (2.4.29-1) unstable; urgency=low
 

commit f40e3394471d158b4af5780e258813b3d2ed8764
Author: Cyril Brulebois <kibi@debian.org>
Date:   Fri Jan 6 20:04:25 2012 +0100

    Document the symlink dance when building from git in README.source.

diff --git a/debian/README.source b/debian/README.source
index 4ecd5e6..f9bb7c6 100644
--- a/debian/README.source
+++ b/debian/README.source
@@ -14,6 +14,12 @@ Quick Guide To Patching This Package For The Impatient
 Alternatively, instead of using quilt directly, you can drop the patch in to 
 debian/patches and add the name of the patch to debian/patches/series.
 
+While building from git, dpkg-source can complain about symlinks vs.
+normal files mismatches. To work around this issue, before uploading,
+and without committing:
+
+  find -type l | while read dest; do src=$(readlink -f $dest); rm $dest; cp $src $dest; done
+
 ------------------------------------
 Guide To The X Strike Force Packages
 ------------------------------------
diff --git a/debian/changelog b/debian/changelog
index d6a0c18..9f24159 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -2,6 +2,7 @@ libdrm (2.4.30-1) UNRELEASED; urgency=low
 
   * New upstream release.
   * Bump libdrm2's and libdrm-intel1's symbols and shlibs accordingly.
+  * Document the symlink dance when building from git in README.source.
 
  -- Cyril Brulebois <kibi@debian.org>  Fri, 06 Jan 2012 19:47:07 +0100
 

commit 9ce84e5c243f6403f0d39e2e5cf13c8ced51b471
Author: Cyril Brulebois <kibi@debian.org>
Date:   Fri Jan 6 19:57:02 2012 +0100

    Bump libdrm2's and libdrm-intel1's symbols and shlibs accordingly.

diff --git a/debian/changelog b/debian/changelog
index d714a4a..d6a0c18 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,6 +1,7 @@
 libdrm (2.4.30-1) UNRELEASED; urgency=low
 
   * New upstream release.
+  * Bump libdrm2's and libdrm-intel1's symbols and shlibs accordingly.
 
  -- Cyril Brulebois <kibi@debian.org>  Fri, 06 Jan 2012 19:47:07 +0100
 
diff --git a/debian/libdrm-intel1.symbols b/debian/libdrm-intel1.symbols
index 36d102d..c4af4d2 100644
--- a/debian/libdrm-intel1.symbols
+++ b/debian/libdrm-intel1.symbols
@@ -39,6 +39,13 @@ libdrm_intel.so.1 libdrm-intel1 #MINVER#
  drm_intel_bufmgr_gem_init@Base 2.4.1
  drm_intel_bufmgr_gem_set_vma_cache_size@Base 2.4.29
  drm_intel_bufmgr_set_debug@Base 2.4.1
+ drm_intel_decode@Base 2.4.30
+ drm_intel_decode_context_alloc@Base 2.4.30
+ drm_intel_decode_context_free@Base 2.4.30
+ drm_intel_decode_set_batch_pointer@Base 2.4.30
+ drm_intel_decode_set_dump_past_end@Base 2.4.30
+ drm_intel_decode_set_head_tail@Base 2.4.30
+ drm_intel_decode_set_output_file@Base 2.4.30
  drm_intel_gem_bo_clear_relocs@Base 2.4.27
  drm_intel_gem_bo_get_reloc_count@Base 2.4.27
  drm_intel_gem_bo_map_gtt@Base 2.4.3
diff --git a/debian/libdrm2.symbols b/debian/libdrm2.symbols
index 31a23da..29ce302 100644
--- a/debian/libdrm2.symbols
+++ b/debian/libdrm2.symbols
@@ -76,6 +76,7 @@ libdrm.so.2 libdrm2 #MINVER#
  drmMap@Base 2.3.1
  drmMapBufs@Base 2.3.1
  drmMarkBufs@Base 2.3.1
+ drmModeAddFB2@Base 2.4.30
  drmModeAddFB@Base 2.4.3
  drmModeAttachMode@Base 2.4.3
  drmModeConnectorSetProperty@Base 2.4.3
@@ -88,6 +89,7 @@ libdrm.so.2 libdrm2 #MINVER#
  drmModeFreeEncoder@Base 2.4.3
  drmModeFreeFB@Base 2.4.3
  drmModeFreeModeInfo@Base 2.4.3
+ drmModeFreePlane@Base 2.4.30
  drmModeFreeProperty@Base 2.4.3
  drmModeFreePropertyBlob@Base 2.4.3
  drmModeFreeResources@Base 2.4.3
@@ -95,6 +97,8 @@ libdrm.so.2 libdrm2 #MINVER#
  drmModeGetCrtc@Base 2.4.3
  drmModeGetEncoder@Base 2.4.3
  drmModeGetFB@Base 2.4.3
+ drmModeGetPlane@Base 2.4.30
+ drmModeGetPlaneResources@Base 2.4.30
  drmModeGetProperty@Base 2.4.3
  drmModeGetPropertyBlob@Base 2.4.3
  drmModeGetResources@Base 2.4.3
@@ -103,6 +107,7 @@ libdrm.so.2 libdrm2 #MINVER#
  drmModeRmFB@Base 2.4.3
  drmModeSetCrtc@Base 2.4.3
  drmModeSetCursor@Base 2.4.3
+ drmModeSetPlane@Base 2.4.30
  drmMsg@Base 2.4.1
  drmOpen@Base 2.3.1
  drmOpenControl@Base 2.4.3
diff --git a/debian/rules b/debian/rules
index 188f43d..a620ec7 100755
--- a/debian/rules
+++ b/debian/rules
@@ -75,9 +75,9 @@ endif
 	dh_strip -s --remaining-packages
 
 override_dh_makeshlibs:
-	dh_makeshlibs -plibdrm2 -V'libdrm2 (>= 2.4.25)' -- -c4
+	dh_makeshlibs -plibdrm2 -V'libdrm2 (>= 2.4.30)' -- -c4
 ifeq ($(INTEL), yes)
-	dh_makeshlibs -plibdrm-intel1 -V'libdrm-intel1 (>= 2.4.29)' -- -c4
+	dh_makeshlibs -plibdrm-intel1 -V'libdrm-intel1 (>= 2.4.30)' -- -c4
 endif
 ifeq ($(NOUVEAU), yes)
 	dh_makeshlibs -plibdrm-nouveau1a -V'libdrm-nouveau1a (>= 2.4.23)' -- -c4

commit 42c8c2b9627a7dc537e5bfb2fddb0c48baeb4eee
Author: Cyril Brulebois <kibi@debian.org>
Date:   Fri Jan 6 19:47:14 2012 +0100

    Bump changelogs.

diff --git a/ChangeLog b/ChangeLog
index e7c92cf..fe7581a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,276 @@
+commit adf1428915bfd0ee24758a3cbd56ce9b64f6eefb
+Author: Eric Anholt <eric@anholt.net>
+Date:   Fri Jan 6 08:50:31 2012 -0800
+
+    configure: Bump version for 2.4.30
+
+commit 9fb83a49cb7e3db2f168aac5172fafb6fa0d69c8
+Author: Eric Anholt <eric@anholt.net>
+Date:   Thu Dec 29 17:40:45 2011 -0800
+
+    intel: Update for new i915_drm.h defines.
+
+commit 683855f65523c978562ead56f9d68f50ffdca1a2
+Author: Eric Anholt <eric@anholt.net>
+Date:   Tue Jan 3 14:32:18 2012 -0800
+
+    intel: Add regression tests for batch decode.
+    
+    The .batch was generated using the dump-a-batch branch of
+    
+    git://people.freedesktop.org/~anholt/mesa
+    
+    using glxgears on gen7 hardware, using INTEL_DEVID_OVERRIDE for
+    non-gen7 (this means that offsets in the buffers for non-gen7 are 0!).
+    The .ref was generated by:
+    
+    ./test_decode tests/gen7-3d.batch -dump.
+    
+    The .sh exists because you can't supply arguments to tests using the
+    simple automake tests driver.  Something reasonable could be done
+    using automake's parallel-tests driver (in fact, a previous version of
+    the patch did that), but I was concerned that:
+    
+    1) The parallel-tests driver is documented to be unstable -- they may
+       change interfaces on us later.
+    2) The parallel-tests driver hides the output of tests in .log files
+       scattered all over the tree, which was ugly and more painful to
+       work with.
+    
+    v2: Actually add the batch files, add a .gitignore for the *-new.txt
+        files added after failures, and fix failure mode for undetected
+        chipset name.
+    Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> (v1)
+
+commit ccbc40340b7b472939a90ae8afc0a82b358ce189
+Author: Eric Anholt <eric@anholt.net>
+Date:   Tue Jan 3 12:33:37 2012 -0800
+
+    intel: Add a regression test program for intel_decode.c.
+    
+    Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
+
+commit ea33a231d530540ddcb9e0bac08ef15f625f744a
+Author: Eric Anholt <eric@anholt.net>
+Date:   Tue Jan 3 13:05:57 2012 -0800
+
+    intel: Add an interface for setting the output file for decode.
+    
+    Consumers often want to choose stdout vs stderr, and for testing I
+    want to output to an open_memstream file.
+    
+    Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
+
+commit a9dd34a7ee9d03d357e15f045ab85a12f6f6e4b8
+Author: Johannes Obermayr <johannesobermayr@gmx.de>
+Date:   Sat Dec 31 01:45:32 2011 +0100
+
+    intel/intel_decode.c: Remove #include "intel_decode.h".
+    
+    Signed-off-by: Chad Versace <chad.versace@linux.intel.com>
+
+commit 4149faf3370c92e85533093bf764e773ebc41d88
+Author: Eric Anholt <eric@anholt.net>
+Date:   Tue Dec 20 14:32:27 2011 -0800
+
+    intel: Disable unused decode_logic_op().
+    
+    It was producing an unused code warning.  I'm tempted to just remove
+    it, since it's unused, but I *might* use it soon.
+    
+    Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
+    Acked-by: Eugeni Dodonov <eugeni@dodonov.net>
+
+commit 88cffcc899b6951c422aafbe7ae3069e3e795922
+Author: Eric Anholt <eric@anholt.net>
+Date:   Tue Dec 20 14:28:03 2011 -0800
+
+    intel: Turn on normal warnings for intel_decode.c build.
+    
+    Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
+    Acked-by: Eugeni Dodonov <eugeni@dodonov.net>
+
+commit 7b483188067c00014c5d263784d5140032a16cb6
+Author: Eric Anholt <eric@anholt.net>
+Date:   Tue Dec 20 14:27:17 2011 -0800
+
+    intel: Remove c99ish variable declarations.
+    
+    I'd rather be able to use c99 variable declarations (there's a lot of
+    awful code layout due to being c90ish), but I'll leave that for later.
+    
+    Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
+    Acked-by: Eugeni Dodonov <eugeni@dodonov.net>
+
+commit 0c46f020c8a75a906f974dedb6628ed7eadb0b97
+Author: Eric Anholt <eric@anholt.net>
+Date:   Tue Dec 20 14:23:15 2011 -0800
+
+    intel: Fix printf format warnings for intel_decode.
+    
+    There was plenty of dropped useful data, and some horribly
+    mis-formatted data.
+    
+    Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
+    Acked-by: Eugeni Dodonov <eugeni@dodonov.net>
+
+commit 39a06acfbdd834bcd365de08c7c14cfa39b18eab
+Author: Eric Anholt <eric@anholt.net>
+Date:   Tue Dec 20 12:01:19 2011 -0800
+
+    intel: Add printflike warnings for instr_out.
+    
+    Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
+    Acked-by: Eugeni Dodonov <eugeni@dodonov.net>
+
+commit 1db55a80a9f3f74df716c14d3cbfc1507f084221
+Author: Eric Anholt <eric@anholt.net>
+Date:   Tue Dec 20 12:00:28 2011 -0800
+
+    intel: Fix a ton of signed vs unsigned and const char *warnings
+    
+    We've got a different (better) set of warning flags in place in this
+    tree.
+    
+    Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
+    Acked-by: Eugeni Dodonov <eugeni@dodonov.net>
+
+commit 07768babb81bf8b9b993c41e7dca1e011fd6bd69
+Author: Eric Anholt <eric@anholt.net>
+Date:   Tue Dec 20 13:46:23 2011 -0800
+
+    intel: Fix Wsigned-compare warnings (soon to be enabled).
+    
+    Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
+    Acked-by: Eugeni Dodonov <eugeni@dodonov.net>
+
+commit 71066abe1e32d906f65141c34ecfd9ffbf89ebde
+Author: Eric Anholt <eric@anholt.net>
+Date:   Tue Dec 20 13:06:16 2011 -0800
+
+    intel: Get intel_decode.c minimally building.
+    
+    My plan is to use this drm_intel_dump_batchbuffer() interface for the
+    current GPU tools, and the current Mesa batch dumping usage, while
+    eventually building more interesting interfaces for other uses.
+    
+    Warnings are currently suppressed by using a helper lib with CFLAGS
+    set manually, because the code is totally not ready for libdrm's warnings
+    setup.
+    
+    Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
+    Acked-by: Eugeni Dodonov <eugeni@dodonov.net>
+
+commit bbdda928d3c0fa2e5b38adc4c3f7763f957b5207
+Author: Eric Anholt <eric@anholt.net>
+Date:   Tue Dec 20 11:44:36 2011 -0800
+
+    intel: Minor style tweaks after Lindent.
+    
+    Some comments weren't wrapped, and for some reason uint32_t *data got
+    an extra space (while other instances of "type *identifier" didn't),
+    and the indentation of the opcode-list structs got trashed.
+    
+    Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
+    Acked-by: Eugeni Dodonov <eugeni@dodonov.net>
+
+commit 193fa138d74f8d857b01b5ca8624f4ca79d9a91e
+Author: Eric Anholt <eric@anholt.net>
+Date:   Tue Dec 20 11:36:07 2011 -0800
+
+    intel: Reformat intel_decode.c from intel-gpu-tools using Lindent.
+    
+    We generally go for kernel style in this tree, and this 4-space indent
+    stuff was bothering me.  The new results have some ugly bits, but
+    they're in places where we desperately want to be using helper
+    functions anyway.
+    
+    Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
+    Acked-by: Eugeni Dodonov <eugeni@dodonov.net>
+
+commit 1d318e2a79c3ae02fa886bcba79ac68b5222e1a3
+Author: Eric Anholt <eric@anholt.net>
+Date:   Tue Dec 20 13:03:37 2011 -0800
+
+    intel: intel: Add IS_GEN[567] macros.
+    
+    These will be used by intel_decode.c, and were taken from intel-gpu-tools.
+    
+    Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
+    Acked-by: Eugeni Dodonov <eugeni@dodonov.net>
+
+commit 078bc5b6ee24ea786c465f5e29dcb8b0d2f81b2e
+Author: Eric Anholt <eric@anholt.net>
+Date:   Tue Dec 20 13:10:36 2011 -0800
+
+    intel: Make intel_chipset handle devid directly.
+    
+    This will make these macros reusable from intel_decode.c, which
+    doesn't have a bufmgr_gem context, without faking the struct.  We
+    should generally only be using these macros from bufmgr_gem context
+    setup anyway.
+    
+    Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
+    Acked-by: Eugeni Dodonov <eugeni@dodonov.net>
+
+commit 8c4a2c884846caca517b49e2026661e57924d9e1
+Author: Eric Anholt <eric@anholt.net>
+Date:   Tue Dec 20 11:25:20 2011 -0800
+
+    intel: Import intel_decode.c from intel-gpu-tools.
+    
+    This is from commit dd9a5b4f7fb07c78db4e7481bedca1b981030e3f.
+    We've been sharing this file between that repo and Mesa, and it's time
+    to build a real interface using it.  I'm also hoping to apply some of
+    its packet-walking logic for AUB dumping and batch validation
+    purposes.
+    
+    Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
+    Acked-by: Eugeni Dodonov <eugeni@dodonov.net>
+
+commit ef20301a11afae50bfe127002913dbd0b81ddccc
+Author: Chris Wilson <chris@chris-wilson.co.uk>
+Date:   Sun Dec 18 13:58:57 2011 +0000
+
+    tests/gem_flink: Check for MASTER before proceeding
+    
+    gem_flink|gem_open are DRM_AUTH ioctl, and being lazy we do not
+    establish ourselves as authenticated before testing the ioctls. So
+    instead of aborting, skip the test unless we have root privileges (and
+    so DRM_MASTER and the DRM_AUTH restriction no longer applies).
+    
+    A future test could assert that the flink fails without proper
+    authentication.
+    
+    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=43924
+    Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
+
+commit 0ab2251b70d49a294d24f3ef54982e95226c104a
+Author: Chris Wilson <chris@chris-wilson.co.uk>
+Date:   Wed Dec 14 08:20:10 2011 +0000
+
+    intel: Reset vma list upon purge
+    
+    During free we unconditionally delete the bo from the vma cache. This
+    relies on the its list member being kept in a sane state. This fails
+    after the object is purged, as the purge operation performs a pure
+    deletion and doesn't reset the list member, leaving a pair of dangling
+    pointers.
+    
+    Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
+
+commit ac168bf2a068761b591187e6a0a52083d456280b
+Author: Jesse Barnes <jbarnes@virtuousgeek.org>
+Date:   Fri Apr 29 08:53:53 2011 -0700
+
+    libdrm: update drm headers from kernel, including new overlay ioctls & structs
+    
+    Add structs and functions necessary for the new plane and fb handling code,
+    including a new header, drm_fourcc.h, that includes the surface formats
+    supported by various DRM drivers.
+    
+    Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
+
 commit 7fd1678110b78d9324723a54dfd5049496b9e3cf
 Author: Chris Wilson <chris@chris-wilson.co.uk>
 Date:   Mon Dec 5 23:09:20 2011 +0000
diff --git a/debian/changelog b/debian/changelog
index 3deadfe..d714a4a 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,9 @@
+libdrm (2.4.30-1) UNRELEASED; urgency=low
+
+  * New upstream release.
+
+ -- Cyril Brulebois <kibi@debian.org>  Fri, 06 Jan 2012 19:47:07 +0100
+
 libdrm (2.4.29-1) unstable; urgency=low
 
   * New upstream release:

commit adf1428915bfd0ee24758a3cbd56ce9b64f6eefb
Author: Eric Anholt <eric@anholt.net>
Date:   Fri Jan 6 08:50:31 2012 -0800

    configure: Bump version for 2.4.30

diff --git a/configure.ac b/configure.ac
index 540622f..773167f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -20,7 +20,7 @@
 
 AC_PREREQ([2.63])
 AC_INIT([libdrm],
-        [2.4.29],
+        [2.4.30],
         [https://bugs.freedesktop.org/enter_bug.cgi?product=DRI],
         [libdrm])
 

commit 9fb83a49cb7e3db2f168aac5172fafb6fa0d69c8
Author: Eric Anholt <eric@anholt.net>
Date:   Thu Dec 29 17:40:45 2011 -0800

    intel: Update for new i915_drm.h defines.

diff --git a/include/drm/i915_drm.h b/include/drm/i915_drm.h
index adc2392..846897c 100644
--- a/include/drm/i915_drm.h
+++ b/include/drm/i915_drm.h
@@ -228,7 +228,7 @@ typedef struct _drm_i915_sarea {
 #define DRM_IOCTL_I915_GEM_GET_APERTURE	DRM_IOR  (DRM_COMMAND_BASE + DRM_I915_GEM_GET_APERTURE, struct drm_i915_gem_get_aperture)
 #define DRM_IOCTL_I915_GET_PIPE_FROM_CRTC_ID DRM_IOWR(DRM_COMMAND_BASE + DRM_I915_GET_PIPE_FROM_CRTC_ID, struct drm_i915_get_pipe_from_crtc_id)
 #define DRM_IOCTL_I915_GEM_MADVISE	DRM_IOWR(DRM_COMMAND_BASE + DRM_I915_GEM_MADVISE, struct drm_i915_gem_madvise)
-#define DRM_IOCTL_I915_OVERLAY_PUT_IMAGE	DRM_IOW(DRM_COMMAND_BASE + DRM_IOCTL_I915_OVERLAY_ATTRS, struct drm_intel_overlay_put_image)
+#define DRM_IOCTL_I915_OVERLAY_PUT_IMAGE	DRM_IOW(DRM_COMMAND_BASE + DRM_I915_OVERLAY_PUT_IMAGE, struct drm_intel_overlay_put_image)
 #define DRM_IOCTL_I915_OVERLAY_ATTRS	DRM_IOWR(DRM_COMMAND_BASE + DRM_I915_OVERLAY_ATTRS, struct drm_intel_overlay_attrs)
 
 /* Allow drivers to submit batchbuffers directly to hardware, relying
@@ -282,6 +282,7 @@ typedef struct drm_i915_irq_wait {
 #define I915_PARAM_HAS_COHERENT_RINGS	 13
 #define I915_PARAM_HAS_EXEC_CONSTANTS	 14
 #define I915_PARAM_HAS_RELAXED_DELTA	 15
+#define I915_PARAM_HAS_GEN7_SOL_RESET	 16
 
 typedef struct drm_i915_getparam {
 	int param;
@@ -644,6 +645,9 @@ struct drm_i915_gem_execbuffer2 {
 	__u64 rsvd2;
 };
 
+/** Resets the SO write offset registers for transform feedback on gen7. */
+#define I915_EXEC_GEN7_SOL_RESET	(1<<8)
+
 struct drm_i915_gem_pin {
 	/** Handle of the buffer to be pinned. */
 	__u32 handle;

commit 683855f65523c978562ead56f9d68f50ffdca1a2
Author: Eric Anholt <eric@anholt.net>
Date:   Tue Jan 3 14:32:18 2012 -0800

    intel: Add regression tests for batch decode.
    
    The .batch was generated using the dump-a-batch branch of
    
    git://people.freedesktop.org/~anholt/mesa
    
    using glxgears on gen7 hardware, using INTEL_DEVID_OVERRIDE for
    non-gen7 (this means that offsets in the buffers for non-gen7 are 0!).
    The .ref was generated by:
    
    ./test_decode tests/gen7-3d.batch -dump.
    
    The .sh exists because you can't supply arguments to tests using the
    simple automake tests driver.  Something reasonable could be done
    using automake's parallel-tests driver (in fact, a previous version of
    the patch did that), but I was concerned that:
    
    1) The parallel-tests driver is documented to be unstable -- they may
       change interfaces on us later.
    2) The parallel-tests driver hides the output of tests in .log files
       scattered all over the tree, which was ugly and more painful to
       work with.
    
    v2: Actually add the batch files, add a .gitignore for the *-new.txt
        files added after failures, and fix failure mode for undetected
        chipset name.
    Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> (v1)

diff --git a/intel/Makefile.am b/intel/Makefile.am
index 2d3d8c4..581c8c0 100644
--- a/intel/Makefile.am
+++ b/intel/Makefile.am
@@ -57,6 +57,23 @@ libdrm_intelinclude_HEADERS = intel_bufmgr.h \
 # This may be interesting even outside of "make check", due to the -dump option.
 noinst_PROGRAMS = test_decode
 
+BATCHES = \
+	tests/gen4-3d.batch \
+	tests/gm45-3d.batch \
+	tests/gen5-3d.batch \
+	tests/gen6-3d.batch \
+	tests/gen7-3d.batch
+
+TESTS = \
+	$(BATCHES:.batch=.batch.sh)
+
+EXTRA_DIST = \
+	$(BATCHES) \
+	$(BATCHES:.batch=.batch.sh) \
+	$(BATCHES:.batch=.batch-ref.txt) \
+	$(BATCHES:.batch=.batch-ref.txt) \
+	tests/test-batch.sh
+
 test_decode_LDADD = libdrm_intel.la
 
 pkgconfig_DATA = libdrm_intel.pc
diff --git a/intel/test_decode.c b/intel/test_decode.c
index d41b0b2..c9ab7ad 100644
--- a/intel/test_decode.c
+++ b/intel/test_decode.c
@@ -144,6 +144,7 @@ infer_devid(const char *batch_filename)
 		{ "gen5", PCI_CHIP_ILD_G },
 		{ "gen6", PCI_CHIP_SANDYBRIDGE_GT2 },
 		{ "gen7", PCI_CHIP_IVYBRIDGE_GT2 },
+		{ NULL, 0 },
 	};
 	int i;
 
diff --git a/intel/tests/.gitignore b/intel/tests/.gitignore
new file mode 100644
index 0000000..e9d01ec
--- /dev/null
+++ b/intel/tests/.gitignore
@@ -0,0 +1 @@
+*-new.txt
diff --git a/intel/tests/gen4-3d.batch b/intel/tests/gen4-3d.batch
new file mode 100644
index 0000000..e6911a4
Binary files /dev/null and b/intel/tests/gen4-3d.batch differ
diff --git a/intel/tests/gen4-3d.batch-ref.txt b/intel/tests/gen4-3d.batch-ref.txt
new file mode 100644
index 0000000..20aa1d4
--- /dev/null
+++ b/intel/tests/gen4-3d.batch-ref.txt
@@ -0,0 +1,488 @@
+0x12300000:      0x61040000: 3DSTATE_PIPELINE_SELECT
+0x12300004:      0x79090000: 3DSTATE_GLOBAL_DEPTH_OFFSET_CLAMP
+0x12300008:      0x00000000:    dword 1
+0x1230000c:      0x61020000: STATE_SIP
+0x12300010:      0x00000000:    dword 1
+0x12300014:      0x780b0000: 3DSTATE_VF_STATISTICS
+0x12300018:      0x61010004: STATE_BASE_ADDRESS
+0x1230001c:      0x00000001:    general state base address 0x00000000
+0x12300020:      0x00000001:    surface state base address 0x00000000
+0x12300024:      0x00000001:    indirect state base address 0x00000000
+0x12300028:      0x00000001:    general state upper bound disabled
+0x1230002c:      0x00000001:    indirect state upper bound disabled
+0x12300030:      0x78010004: 3DSTATE_BINDING_TABLE_POINTERS
+0x12300034:      0x00007e20:    VS binding table
+0x12300038:      0x00000000:    GS binding table
+0x1230003c:      0x00000000:    Clip binding table
+0x12300040:      0x00000000:    SF binding table
+0x12300044:      0x00007e20:    WM binding table
+0x12300048:      0x79010003: 3DSTATE_CONSTANT_COLOR
+0x1230004c:      0x00000000:    dword 1
+0x12300050:      0x00000000:    dword 2
+0x12300054:      0x00000000:    dword 3
+0x12300058:      0x00000000:    dword 4
+0x1230005c:      0x79050003: 3DSTATE_DEPTH_BUFFER
+0x12300060:      0x2c0805ff:    2D, z24s8, pitch = 1536 bytes, tiled
+0x12300064:      0x00000000:    depth offset
+0x12300068:      0x09584ac0:    300x300
+0x1230006c:      0x00000000:    volume depth
+0x12300070:      0x78000005: 3DSTATE_PIPELINED_POINTERS
+0x12300074:      0x00007d60:    VS state
+0x12300078:      0x00000000:    GS state
+0x1230007c:      0x00007d21:    Clip state
+0x12300080:      0x00007d80:    SF state
+0x12300084:      0x00007de0:    WM state
+0x12300088:      0x00007fc0:    CC state
+0x1230008c:      0x60003f01: URB_FENCE: cs vfe sf clip gs vs 
+0x12300090:      0x0320a020:    vs fence: 32, clip_fence: 50, gs_fence: 40
+0x12300094:      0x10000042:    sf fence: 66, vfe_fence: 0, cs_fence: 256
+0x12300098:      0x60010000: CS_URB_STATE
+0x1230009c:      0x00000024:    entry_size: 2 [192 bytes], n_entries: 4
+0x123000a0:      0x79000002: 3DSTATE_DRAWING_RECTANGLE
+0x123000a4:      0x00000000:    top left: 0,0
+0x123000a8:      0x012b012b:    bottom right: 299,299
+0x123000ac:      0x00000000:    origin: 0,0
+0x123000b0:      0x78080003: 3DSTATE_VERTEX_BUFFERS
+0x123000b4:      0x0000000c:    buffer 0: sequential, pitch 12b
+0x123000b8:      0x00000000:    buffer address
+0x123000bc:      0x00000000:    max index
+0x123000c0:      0x00000000:    mbz
+0x123000c4:      0x78090001: 3DSTATE_VERTEX_ELEMENTS
+0x123000c8:      0x04400000:    buffer 0: valid, type 0x0040, src offset 0x0000 bytes
+0x123000cc:      0x11130000:    (X, Y, Z, 1.0), dst offset 0x00 bytes
+0x123000d0:      0x60020100: CONSTANT_BUFFER: valid
+0x123000d4:      0x00000001:    offset: 0x00000000, length: 128 bytes
+0x123000d8:      0x7b001804: 3DPRIMITIVE: tri fan sequential
+0x123000dc:      0x00000004:    vertex count
+0x123000e0:      0x00000000:    start vertex
+0x123000e4:      0x00000001:    instance count
+0x123000e8:      0x00000000:    start instance
+0x123000ec:      0x00000000:    index bias
+0x123000f0:      0x78010004: 3DSTATE_BINDING_TABLE_POINTERS
+0x123000f4:      0x00007b40:    VS binding table
+0x123000f8:      0x00000000:    GS binding table
+0x123000fc:      0x00000000:    Clip binding table
+0x12300100:      0x00000000:    SF binding table
+0x12300104:      0x00007b40:    WM binding table
+0x12300108:      0x78000005: 3DSTATE_PIPELINED_POINTERS
+0x1230010c:      0x00007aa0:    VS state
+0x12300110:      0x00007a41:    GS state
+0x12300114:      0x00007a61:    Clip state
+0x12300118:      0x00007ac0:    SF state
+0x1230011c:      0x00007b00:    WM state
+0x12300120:      0x00007cc0:    CC state
+0x12300124:      0x60003f01: URB_FENCE: cs vfe sf clip gs vs 
+0x12300128:      0x0320a020:    vs fence: 32, clip_fence: 50, gs_fence: 40
+0x1230012c:      0x10000042:    sf fence: 66, vfe_fence: 0, cs_fence: 256
+0x12300130:      0x78080003: 3DSTATE_VERTEX_BUFFERS
+0x12300134:      0x0000000c:    buffer 0: sequential, pitch 12b
+0x12300138:      0x00000000:    buffer address
+0x1230013c:      0x00000000:    max index
+0x12300140:      0x00000000:    mbz
+0x12300144:      0x60020100: CONSTANT_BUFFER: valid
+0x12300148:      0x00000082:    offset: 0x00000080, length: 192 bytes
+0x1230014c:      0x7b002004: 3DPRIMITIVE: quad strip sequential
+0x12300150:      0x00000052:    vertex count
+0x12300154:      0x00000000:    start vertex
+0x12300158:      0x00000001:    instance count
+0x1230015c:      0x00000000:    start instance
+0x12300160:      0x00000000:    index bias
+0x12300164:      0x78000005: 3DSTATE_PIPELINED_POINTERS
+0x12300168:      0x00007aa0:    VS state
+0x1230016c:      0x00007a21:    GS state
+0x12300170:      0x00007a61:    Clip state
+0x12300174:      0x00007ac0:    SF state
+0x12300178:      0x00007b00:    WM state
+0x1230017c:      0x00007cc0:    CC state
+0x12300180:      0x60003f01: URB_FENCE: cs vfe sf clip gs vs 
+0x12300184:      0x0320a020:    vs fence: 32, clip_fence: 50, gs_fence: 40
+0x12300188:      0x10000042:    sf fence: 66, vfe_fence: 0, cs_fence: 256
+0x1230018c:      0x60020100: CONSTANT_BUFFER: valid
+0x12300190:      0x00000082:    offset: 0x00000080, length: 192 bytes
+0x12300194:      0x7b001c04: 3DPRIMITIVE: quad list sequential
+0x12300198:      0x00000050:    vertex count
+0x1230019c:      0x00000052:    start vertex
+0x123001a0:      0x00000001:    instance count
+0x123001a4:      0x00000000:    start instance
+0x123001a8:      0x00000000:    index bias
+0x123001ac:      0x78000005: 3DSTATE_PIPELINED_POINTERS
+0x123001b0:      0x00007aa0:    VS state
+0x123001b4:      0x00007a01:    GS state
+0x123001b8:      0x00007a61:    Clip state
+0x123001bc:      0x00007ac0:    SF state
+0x123001c0:      0x00007b00:    WM state
+0x123001c4:      0x00007cc0:    CC state
+0x123001c8:      0x60003f01: URB_FENCE: cs vfe sf clip gs vs 
+0x123001cc:      0x0320a020:    vs fence: 32, clip_fence: 50, gs_fence: 40
+0x123001d0:      0x10000042:    sf fence: 66, vfe_fence: 0, cs_fence: 256
+0x123001d4:      0x60020100: CONSTANT_BUFFER: valid
+0x123001d8:      0x00000142:    offset: 0x00000140, length: 192 bytes
+0x123001dc:      0x7b002004: 3DPRIMITIVE: quad strip sequential
+0x123001e0:      0x00000052:    vertex count
+0x123001e4:      0x000000a2:    start vertex
+0x123001e8:      0x00000001:    instance count
+0x123001ec:      0x00000000:    start instance
+0x123001f0:      0x00000000:    index bias
+0x123001f4:      0x78000005: 3DSTATE_PIPELINED_POINTERS
+0x123001f8:      0x00007aa0:    VS state
+0x123001fc:      0x000079e1:    GS state
+0x12300200:      0x00007a61:    Clip state
+0x12300204:      0x00007ac0:    SF state
+0x12300208:      0x00007b00:    WM state
+0x1230020c:      0x00007cc0:    CC state
+0x12300210:      0x60003f01: URB_FENCE: cs vfe sf clip gs vs 
+0x12300214:      0x0320a020:    vs fence: 32, clip_fence: 50, gs_fence: 40
+0x12300218:      0x10000042:    sf fence: 66, vfe_fence: 0, cs_fence: 256
+0x1230021c:      0x60020100: CONSTANT_BUFFER: valid
+0x12300220:      0x00000142:    offset: 0x00000140, length: 192 bytes
+0x12300224:      0x7b001c04: 3DPRIMITIVE: quad list sequential
+0x12300228:      0x00000050:    vertex count
+0x1230022c:      0x000000f4:    start vertex
+0x12300230:      0x00000001:    instance count
+0x12300234:      0x00000000:    start instance
+0x12300238:      0x00000000:    index bias
+0x1230023c:      0x78000005: 3DSTATE_PIPELINED_POINTERS
+0x12300240:      0x00007aa0:    VS state
+0x12300244:      0x000079c1:    GS state
+0x12300248:      0x00007a61:    Clip state
+0x1230024c:      0x00007ac0:    SF state
+0x12300250:      0x00007b00:    WM state
+0x12300254:      0x00007cc0:    CC state
+0x12300258:      0x60003f01: URB_FENCE: cs vfe sf clip gs vs 
+0x1230025c:      0x0320a020:    vs fence: 32, clip_fence: 50, gs_fence: 40
+0x12300260:      0x10000042:    sf fence: 66, vfe_fence: 0, cs_fence: 256
+0x12300264:      0x60020100: CONSTANT_BUFFER: valid
+0x12300268:      0x00000142:    offset: 0x00000140, length: 192 bytes
+0x1230026c:      0x78000005: 3DSTATE_PIPELINED_POINTERS
+0x12300270:      0x000079a0:    VS state
+0x12300274:      0x000079c1:    GS state
+0x12300278:      0x00007a61:    Clip state
+0x1230027c:      0x00007ac0:    SF state
+0x12300280:      0x00007b00:    WM state
+0x12300284:      0x00007cc0:    CC state
+0x12300288:      0x60003f01: URB_FENCE: cs vfe sf clip gs vs 
+0x1230028c:      0x0320a020:    vs fence: 32, clip_fence: 50, gs_fence: 40
+0x12300290:      0x10000042:    sf fence: 66, vfe_fence: 0, cs_fence: 256
+0x12300294:      0x78080003: 3DSTATE_VERTEX_BUFFERS
+0x12300298:      0x00000018:    buffer 0: sequential, pitch 24b
+0x1230029c:      0x00000f48:    buffer address
+0x123002a0:      0x00000000:    max index
+0x123002a4:      0x00000000:    mbz
+0x123002a8:      0x78090003: 3DSTATE_VERTEX_ELEMENTS
+0x123002ac:      0x04400000:    buffer 0: valid, type 0x0040, src offset 0x0000 bytes
+0x123002b0:      0x11130000:    (X, Y, Z, 1.0), dst offset 0x00 bytes
+0x123002b4:      0x0440000c:    buffer 0: valid, type 0x0040, src offset 0x000c bytes
+0x123002b8:      0x11130004:    (X, Y, Z, 1.0), dst offset 0x10 bytes
+0x123002bc:      0x60020100: CONSTANT_BUFFER: valid
+0x123002c0:      0x00000202:    offset: 0x00000200, length: 192 bytes
+0x123002c4:      0x7b002004: 3DPRIMITIVE: quad strip sequential
+0x123002c8:      0x000000a2:    vertex count
+0x123002cc:      0x00000000:    start vertex
+0x123002d0:      0x00000001:    instance count
+0x123002d4:      0x00000000:    start instance
+0x123002d8:      0x00000000:    index bias
+0x123002dc:      0x78000005: 3DSTATE_PIPELINED_POINTERS
+0x123002e0:      0x000079a0:    VS state
+0x123002e4:      0x00000000:    GS state
+0x123002e8:      0x00007901:    Clip state
+0x123002ec:      0x00007940:    SF state
+0x123002f0:      0x00007960:    WM state
+0x123002f4:      0x00007cc0:    CC state
+0x123002f8:      0x00000000: MI_NOOP
+0x123002fc:      0x00000000: MI_NOOP
+0x12300300:      0x60003f01: URB_FENCE: cs vfe sf clip gs vs 
+0x12300304:      0x0320a020:    vs fence: 32, clip_fence: 50, gs_fence: 40
+0x12300308:      0x10000042:    sf fence: 66, vfe_fence: 0, cs_fence: 256
+0x1230030c:      0x60020100: CONSTANT_BUFFER: valid
+0x12300310:      0x00000202:    offset: 0x00000200, length: 192 bytes
+0x12300314:      0x7b001404: 3DPRIMITIVE: tri strip sequential
+0x12300318:      0x0000002a:    vertex count
+0x1230031c:      0x000000a2:    start vertex
+0x12300320:      0x00000001:    instance count
+0x12300324:      0x00000000:    start instance
+0x12300328:      0x00000000:    index bias
+0x1230032c:      0x78000005: 3DSTATE_PIPELINED_POINTERS
+0x12300330:      0x00007860:    VS state
+0x12300334:      0x00007801:    GS state
+0x12300338:      0x00007821:    Clip state
+0x1230033c:      0x00007880:    SF state
+0x12300340:      0x000078a0:    WM state
+0x12300344:      0x00007cc0:    CC state
+0x12300348:      0x60003f01: URB_FENCE: cs vfe sf clip gs vs 
+0x1230034c:      0x0320a020:    vs fence: 32, clip_fence: 50, gs_fence: 40
+0x12300350:      0x10000042:    sf fence: 66, vfe_fence: 0, cs_fence: 256
+0x12300354:      0x78080003: 3DSTATE_VERTEX_BUFFERS
+0x12300358:      0x0000000c:    buffer 0: sequential, pitch 12b
+0x1230035c:      0x00002268:    buffer address
+0x12300360:      0x00000000:    max index
+0x12300364:      0x00000000:    mbz
+0x12300368:      0x78090001: 3DSTATE_VERTEX_ELEMENTS
+0x1230036c:      0x04400000:    buffer 0: valid, type 0x0040, src offset 0x0000 bytes
+0x12300370:      0x11130000:    (X, Y, Z, 1.0), dst offset 0x00 bytes
+0x12300374:      0x60020100: CONSTANT_BUFFER: valid
+0x12300378:      0x000002c2:    offset: 0x000002c0, length: 192 bytes
+0x1230037c:      0x7b002004: 3DPRIMITIVE: quad strip sequential
+0x12300380:      0x0000002a:    vertex count
+0x12300384:      0x00000000:    start vertex
+0x12300388:      0x00000001:    instance count
+0x1230038c:      0x00000000:    start instance
+0x12300390:      0x00000000:    index bias
+0x12300394:      0x78000005: 3DSTATE_PIPELINED_POINTERS
+0x12300398:      0x00007860:    VS state
+0x1230039c:      0x000077e1:    GS state
+0x123003a0:      0x00007821:    Clip state
+0x123003a4:      0x00007880:    SF state
+0x123003a8:      0x000078a0:    WM state
+0x123003ac:      0x00007cc0:    CC state
+0x123003b0:      0x60003f01: URB_FENCE: cs vfe sf clip gs vs 
+0x123003b4:      0x0320a020:    vs fence: 32, clip_fence: 50, gs_fence: 40
+0x123003b8:      0x10000042:    sf fence: 66, vfe_fence: 0, cs_fence: 256
+0x123003bc:      0x60020100: CONSTANT_BUFFER: valid
+0x123003c0:      0x000002c2:    offset: 0x000002c0, length: 192 bytes
+0x123003c4:      0x7b001c04: 3DPRIMITIVE: quad list sequential
+0x123003c8:      0x00000028:    vertex count
+0x123003cc:      0x0000002a:    start vertex
+0x123003d0:      0x00000001:    instance count
+0x123003d4:      0x00000000:    start instance
+0x123003d8:      0x00000000:    index bias
+0x123003dc:      0x78000005: 3DSTATE_PIPELINED_POINTERS
+0x123003e0:      0x00007860:    VS state
+0x123003e4:      0x000077c1:    GS state
+0x123003e8:      0x00007821:    Clip state
+0x123003ec:      0x00007880:    SF state
+0x123003f0:      0x000078a0:    WM state
+0x123003f4:      0x00007cc0:    CC state
+0x123003f8:      0x00000000: MI_NOOP
+0x123003fc:      0x00000000: MI_NOOP
+0x12300400:      0x60003f01: URB_FENCE: cs vfe sf clip gs vs 
+0x12300404:      0x0320a020:    vs fence: 32, clip_fence: 50, gs_fence: 40
+0x12300408:      0x10000042:    sf fence: 66, vfe_fence: 0, cs_fence: 256
+0x1230040c:      0x60020100: CONSTANT_BUFFER: valid
+0x12300410:      0x00000382:    offset: 0x00000380, length: 192 bytes
+0x12300414:      0x7b002004: 3DPRIMITIVE: quad strip sequential
+0x12300418:      0x0000002a:    vertex count
+0x1230041c:      0x00000052:    start vertex
+0x12300420:      0x00000001:    instance count
+0x12300424:      0x00000000:    start instance
+0x12300428:      0x00000000:    index bias
+0x1230042c:      0x78000005: 3DSTATE_PIPELINED_POINTERS
+0x12300430:      0x00007860:    VS state
+0x12300434:      0x000077a1:    GS state
+0x12300438:      0x00007821:    Clip state
+0x1230043c:      0x00007880:    SF state
+0x12300440:      0x000078a0:    WM state
+0x12300444:      0x00007cc0:    CC state
+0x12300448:      0x60003f01: URB_FENCE: cs vfe sf clip gs vs 
+0x1230044c:      0x0320a020:    vs fence: 32, clip_fence: 50, gs_fence: 40
+0x12300450:      0x10000042:    sf fence: 66, vfe_fence: 0, cs_fence: 256
+0x12300454:      0x60020100: CONSTANT_BUFFER: valid
+0x12300458:      0x00000382:    offset: 0x00000380, length: 192 bytes
+0x1230045c:      0x7b001c04: 3DPRIMITIVE: quad list sequential
+0x12300460:      0x00000028:    vertex count
+0x12300464:      0x0000007c:    start vertex
+0x12300468:      0x00000001:    instance count
+0x1230046c:      0x00000000:    start instance
+0x12300470:      0x00000000:    index bias
+0x12300474:      0x78000005: 3DSTATE_PIPELINED_POINTERS
+0x12300478:      0x00007860:    VS state
+0x1230047c:      0x00007781:    GS state
+0x12300480:      0x00007821:    Clip state
+0x12300484:      0x00007880:    SF state
+0x12300488:      0x000078a0:    WM state
+0x1230048c:      0x00007cc0:    CC state
+0x12300490:      0x60003f01: URB_FENCE: cs vfe sf clip gs vs 
+0x12300494:      0x0320a020:    vs fence: 32, clip_fence: 50, gs_fence: 40
+0x12300498:      0x10000042:    sf fence: 66, vfe_fence: 0, cs_fence: 256
+0x1230049c:      0x60020100: CONSTANT_BUFFER: valid
+0x123004a0:      0x00000382:    offset: 0x00000380, length: 192 bytes
+0x123004a4:      0x78000005: 3DSTATE_PIPELINED_POINTERS
+0x123004a8:      0x00007760:    VS state
+0x123004ac:      0x00007781:    GS state
+0x123004b0:      0x00007821:    Clip state
+0x123004b4:      0x00007880:    SF state
+0x123004b8:      0x000078a0:    WM state
+0x123004bc:      0x00007cc0:    CC state
+0x123004c0:      0x60003f01: URB_FENCE: cs vfe sf clip gs vs 
+0x123004c4:      0x0320a020:    vs fence: 32, clip_fence: 50, gs_fence: 40
+0x123004c8:      0x10000042:    sf fence: 66, vfe_fence: 0, cs_fence: 256
+0x123004cc:      0x78080003: 3DSTATE_VERTEX_BUFFERS
+0x123004d0:      0x00000018:    buffer 0: sequential, pitch 24b
+0x123004d4:      0x00002a30:    buffer address
+0x123004d8:      0x00000000:    max index
+0x123004dc:      0x00000000:    mbz
+0x123004e0:      0x78090003: 3DSTATE_VERTEX_ELEMENTS
+0x123004e4:      0x04400000:    buffer 0: valid, type 0x0040, src offset 0x0000 bytes
+0x123004e8:      0x11130000:    (X, Y, Z, 1.0), dst offset 0x00 bytes
+0x123004ec:      0x0440000c:    buffer 0: valid, type 0x0040, src offset 0x000c bytes
+0x123004f0:      0x11130004:    (X, Y, Z, 1.0), dst offset 0x10 bytes
+0x123004f4:      0x60020100: CONSTANT_BUFFER: valid
+0x123004f8:      0x00000442:    offset: 0x00000440, length: 192 bytes
+0x123004fc:      0x7b002004: 3DPRIMITIVE: quad strip sequential
+0x12300500:      0x00000052:    vertex count
+0x12300504:      0x00000000:    start vertex
+0x12300508:      0x00000001:    instance count
+0x1230050c:      0x00000000:    start instance
+0x12300510:      0x00000000:    index bias
+0x12300514:      0x78000005: 3DSTATE_PIPELINED_POINTERS
+0x12300518:      0x00007760:    VS state
+0x1230051c:      0x00000000:    GS state
+0x12300520:      0x000076c1:    Clip state
+0x12300524:      0x00007700:    SF state
+0x12300528:      0x00007720:    WM state
+0x1230052c:      0x00007cc0:    CC state
+0x12300530:      0x60003f01: URB_FENCE: cs vfe sf clip gs vs 
+0x12300534:      0x0320a020:    vs fence: 32, clip_fence: 50, gs_fence: 40


Reply to: