i965/skl: Fix the maximum thread count format for the PS

According to the bspec for some reason the format of the maximum
number of threads field has changed from U8-2 to U8-1 for the PS.

Reviewed-by: Anuj Phogat <anuj.phogat@gmail.com>
This commit is contained in:
Neil Roberts 2015-02-27 16:57:22 +00:00
parent 27a34f62ba
commit aef8a48979
1 changed files with 6 additions and 1 deletions

View File

@ -146,8 +146,13 @@ upload_ps_state(struct brw_context *brw)
/* 3DSTATE_PS expects the number of threads per PSD, which is always 64;
* it implicitly scales for different GT levels (which have some # of PSDs).
*
* In Gen8 the format is U8-2 whereas in Gen9 it is U8-1.
*/
dw6 |= (64 - 2) << HSW_PS_MAX_THREADS_SHIFT;
if (brw->gen >= 9)
dw6 |= (64 - 1) << HSW_PS_MAX_THREADS_SHIFT;
else
dw6 |= (64 - 2) << HSW_PS_MAX_THREADS_SHIFT;
if (prog_data->base.nr_params > 0)
dw6 |= GEN7_PS_PUSH_CONSTANT_ENABLE;