[Intel-gfx] [PATCH] tools/null_state/gen9: Send atleast one valid component in VF state

Mika Kuoppala mika.kuoppala at linux.intel.com
Wed Aug 5 01:13:46 PDT 2015


Ben Widawsky <benjamin.widawsky at intel.com> writes:

> On Fri, Jul 31, 2015 at 04:27:07PM +0100, Arun Siluvery wrote:
>> A programming restriction exists for this instruction, atleast one component
>> of one valid vertex element must be enabled.
>> 
>> Cc: Ben Widawsky <benjamin.widawsky at intel.com>
>> Cc: Chris Wilson <chris at chris-wilson.co.uk>
>> Signed-off-by: Arun Siluvery <arun.siluvery at linux.intel.com>
>> ---
>>  tools/null_state_gen/intel_renderstate_gen9.c | 7 ++++++-
>>  1 file changed, 6 insertions(+), 1 deletion(-)
>> 
>> diff --git a/tools/null_state_gen/intel_renderstate_gen9.c b/tools/null_state_gen/intel_renderstate_gen9.c
>> index 6f808f8..b3766ea 100644
>> --- a/tools/null_state_gen/intel_renderstate_gen9.c
>> +++ b/tools/null_state_gen/intel_renderstate_gen9.c
>> @@ -440,7 +440,12 @@ int gen9_setup_null_render_state(struct intel_batchbuffer *batch)
>>  	/* Vertex buffers */
>>  	gen8_emit_vertex_buffers(batch);
>>  	gen8_emit_vertex_elements(batch);
>> -	OUT_CMD(GEN9_3DSTATE_COMPONENT_PACKING, 5);
>> +
>> +	OUT_BATCH(GEN9_3DSTATE_COMPONENT_PACKING | 3);
>> +	OUT_BATCH(1);
>> +	OUT_BATCH(0);
>> +	OUT_BATCH(0);
>> +	OUT_BATCH(0);
>>  
>>  	OUT_BATCH(GEN6_3DSTATE_VF_STATISTICS | 1 /* Enable */);
>>  
>
> Like I said on IRC, I don't think this does anything unless you set bit 9 of
> 3DSTATE_VF.0. Also, I believe you should be setting 0xf, not 1 since you'd want
> to use all 4 components.
>
> So I'm not really sure what we're aiming to do. If you make it 0xf, and add a
> comment about how this command doesn't do anything because we're not setting up
> 3DSTATE_VF packing, it's:
> Reviewed-by: Ben Widawsky <ben at bwidawsk.net>
>
> I'm still more in favor of dropping the command altogether, that too would be:
> Reviewed-by: Ben Widawsky <ben at bwidawsk.net>

We are trying here just to satisfy the minimum requirements the bspec
states.

The bspec also states that with gen9+, the 3d pipeline state
doesn't need to be initialized. We should seek confirmation
about this and if it is so, remove the null state for gen9+.

-Mika

>
> -- 
> Ben Widawsky, Intel Open Source Technology Center
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx


More information about the Intel-gfx mailing list