Mesa (master): i965: Fix incorrect maximum PS thread count shift on Ivybridge.

Kenneth Graunke kwg at kemper.freedesktop.org
Mon Sep 26 11:50:02 PDT 2011


Module: Mesa
Branch: master
Commit: 01dda0758e31ec62145488d9880a991674521054
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=01dda0758e31ec62145488d9880a991674521054

Author: Kenneth Graunke <kenneth at whitecape.org>
Date:   Fri Sep 23 23:32:56 2011 -0700

i965: Fix incorrect maximum PS thread count shift on Ivybridge.

At one point, the documentation said that max thread count in 3DSTATE_PS
was at bit offset 23, but it's actually 24 on Ivybridge.  Not only did
this halve our thread count, it caused us to write 1 into a bit 23, which
is marked as MBZ (must be zero).  Furthermore, it made us write an even
number into this field, which is apparently not allowed.  Apparently we
were just lucky it worked.

NOTE: This is a candidate for the 7.11 branch.

Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>
Reviewed-by: Eric Anholt <eric at anholt.net>

---

 src/mesa/drivers/dri/i965/brw_defines.h |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/src/mesa/drivers/dri/i965/brw_defines.h b/src/mesa/drivers/dri/i965/brw_defines.h
index 055aa4a..05a1337 100644
--- a/src/mesa/drivers/dri/i965/brw_defines.h
+++ b/src/mesa/drivers/dri/i965/brw_defines.h
@@ -1304,7 +1304,7 @@ enum opcode {
 # define GEN7_PS_FLOATING_POINT_MODE_ALT		(1 << 16)
 /* DW3: scratch space */
 /* DW4 */
-# define GEN7_PS_MAX_THREADS_SHIFT			23
+# define GEN7_PS_MAX_THREADS_SHIFT			24
 # define GEN7_PS_PUSH_CONSTANT_ENABLE		        (1 << 11)
 # define GEN7_PS_ATTRIBUTE_ENABLE		        (1 << 10)
 # define GEN7_PS_OMASK_TO_RENDER_TARGET			(1 << 9)



More information about the mesa-commit mailing list