i965: Set maximum number of threads for Ivybridge.
authorKenneth Graunke <kenneth@whitecape.org>
Sat, 9 Apr 2011 08:57:31 +0000 (01:57 -0700)
committerKenneth Graunke <kenneth@whitecape.org>
Wed, 18 May 2011 06:32:58 +0000 (23:32 -0700)
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Eric Anholt <eric@anholt.net>
src/mesa/drivers/dri/i965/brw_context.c

index a4e22776c0c929a4b90aef74e1f6817b17c77a2a..3a7e33145ba99abdb0027f7c944ffe156920e164 100644 (file)
@@ -178,7 +178,17 @@ GLboolean brwCreateContext( int api,
    }
 
    /* WM maximum threads is number of EUs times number of threads per EU. */
-   if (intel->gen >= 6) {
+   if (intel->gen >= 7) {
+      if (IS_IVB_GT1(intel->intelScreen->deviceID)) {
+        brw->wm_max_threads = 86;
+        brw->vs_max_threads = 36;
+      } else if (IS_IVB_GT2(intel->intelScreen->deviceID)) {
+        brw->wm_max_threads = 86;
+        brw->vs_max_threads = 128;
+      } else {
+        assert(!"Unknown gen7 device.");
+      }
+   } else if (intel->gen == 6) {
       if (IS_GT2(intel->intelScreen->deviceID)) {
         /* This could possibly be 80, but is supposed to require
          * disabling of WIZ hashing (bit 6 of GT_MODE, 0x20d0) and a