freedreno/ir3: Allocate const space for tessellation parameters
The tessellation stages need size and stride or the patch layout as well as locations of attributes in the patch. The tesselation stages also use two system memory BOs and need the iovas of those. Signed-off-by: Kristian H. Kristensen <hoegsberg@google.com> Acked-by: Eric Anholt <eric@anholt.net> Reviewed-by: Rob Clark <robdclark@gmail.com>
This commit is contained in:
parent
8739ea3ab5
commit
7272e8a709
|
@ -460,6 +460,13 @@ ir3_setup_const_state(struct ir3_shader *shader, nir_shader *nir)
|
|||
const_state->offsets.primitive_param = constoff;
|
||||
constoff += 1;
|
||||
break;
|
||||
case MESA_SHADER_TESS_CTRL:
|
||||
case MESA_SHADER_TESS_EVAL:
|
||||
constoff = align(constoff - 1, 4) + 3;
|
||||
const_state->offsets.primitive_param = constoff;
|
||||
const_state->offsets.primitive_map = constoff + 5;
|
||||
constoff += 5 + DIV_ROUND_UP(nir->num_inputs, 4);
|
||||
break;
|
||||
case MESA_SHADER_GEOMETRY:
|
||||
const_state->offsets.primitive_param = constoff;
|
||||
const_state->offsets.primitive_map = constoff + 1;
|
||||
|
|
Loading…
Reference in New Issue