i965/gen7: Don't emit 3DSTATE_GS_SVB_INDEX on Ivybridge.
authorKenneth Graunke <kenneth@whitecape.org>
Mon, 6 Jun 2011 17:35:58 +0000 (10:35 -0700)
committerKenneth Graunke <kenneth@whitecape.org>
Wed, 8 Jun 2011 21:51:11 +0000 (14:51 -0700)
According to vol2a.07, it only applies from Cantiga to Sandybridge.

I found this in my ringbuffers while investigating various GPU hangs.
While it may not have been the cause, it seemed wise to remove it.

Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Eric Anholt <eric@anholt.net>
src/mesa/drivers/dri/i965/brw_misc_state.c

index 4256234a645ebcf1a87461e7c51147a4a13e2447..a6de28b3addbdc42409f8d3c2121ea993cda4f37 100644 (file)
@@ -606,13 +606,15 @@ static void upload_invarient_state( struct brw_context *brw )
       OUT_BATCH(1);
       ADVANCE_BATCH();
 
-      for (i = 0; i < 4; i++) {
-        BEGIN_BATCH(4);
-        OUT_BATCH(_3DSTATE_GS_SVB_INDEX << 16 | (4 - 2));
-        OUT_BATCH(i << SVB_INDEX_SHIFT);
-        OUT_BATCH(0);
-        OUT_BATCH(0xffffffff);
-        ADVANCE_BATCH();
+      if (intel->gen < 7) {
+        for (i = 0; i < 4; i++) {
+           BEGIN_BATCH(4);
+           OUT_BATCH(_3DSTATE_GS_SVB_INDEX << 16 | (4 - 2));
+           OUT_BATCH(i << SVB_INDEX_SHIFT);
+           OUT_BATCH(0);
+           OUT_BATCH(0xffffffff);
+           ADVANCE_BATCH();
+        }
       }
    }