etnaviv: Switch to stream_count from etna_core_info

Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Reviewed-by: Lucas Stach <l.stach@pengutronix.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30806>
This commit is contained in:
Christian Gmeiner 2024-08-21 09:57:34 +02:00 committed by Marge Bot
parent 8b0a409431
commit 61d0ec5aec
4 changed files with 4 additions and 7 deletions

View file

@ -335,7 +335,7 @@ etna_emit_state(struct etna_context *ctx)
for (int x = 0; x < ctx->vertex_buffer.count; ++x) {
/*14600*/ EMIT_STATE_RELOC(NFE_VERTEX_STREAMS_BASE_ADDR(x), &ctx->vertex_buffer.cvb[x].FE_VERTEX_STREAM_BASE_ADDR);
}
} else if(screen->specs.stream_count > 1) { /* hw w/ multiple vertex streams */
} else if(screen->info->gpu.stream_count > 1) { /* hw w/ multiple vertex streams */
for (int x = 0; x < ctx->vertex_buffer.count; ++x) {
/*00680*/ EMIT_STATE_RELOC(FE_VERTEX_STREAMS_BASE_ADDR(x), &ctx->vertex_buffer.cvb[x].FE_VERTEX_STREAM_BASE_ADDR);
}
@ -349,7 +349,7 @@ etna_emit_state(struct etna_context *ctx)
if (ctx->vertex_buffer.cvb[x].FE_VERTEX_STREAM_BASE_ADDR.bo) {
if (screen->info->halti >= 2)
/*14640*/ EMIT_STATE(NFE_VERTEX_STREAMS_CONTROL(x), ctx->vertex_elements->FE_VERTEX_STREAM_CONTROL[x]);
else if (screen->specs.stream_count > 1)
else if (screen->info->gpu.stream_count > 1)
/*006A0*/ EMIT_STATE(FE_VERTEX_STREAMS_CONTROL(x), ctx->vertex_elements->FE_VERTEX_STREAM_CONTROL[x]);
else
/*00650*/ EMIT_STATE(FE_VERTEX_STREAM_CONTROL, ctx->vertex_elements->FE_VERTEX_STREAM_CONTROL[0]);

View file

@ -103,8 +103,6 @@ struct etna_specs {
unsigned vertex_sampler_count;
/* maximum number of vertex element configurations */
unsigned vertex_max_elements;
/* number of vertex streams */
unsigned stream_count;
/* vertex shader memory address*/
uint32_t vs_offset;
/* pixel shader memory address*/

View file

@ -216,7 +216,7 @@ etna_screen_get_param(struct pipe_screen *pscreen, enum pipe_cap param)
case PIPE_CAP_MAX_VERTEX_ELEMENT_SRC_OFFSET:
return 255;
case PIPE_CAP_MAX_VERTEX_BUFFERS:
return screen->specs.stream_count;
return screen->info->gpu.stream_count;
case PIPE_CAP_VS_INSTANCEID:
case PIPE_CAP_VERTEX_ELEMENT_INSTANCE_DIVISOR:
return VIV_FEATURE(screen, ETNA_FEATURE_HALTI2);
@ -852,7 +852,6 @@ etna_get_specs(struct etna_screen *screen)
/* Copy all relevant limits from etna_core_info. */
if (info->type == ETNA_CORE_GPU) {
instruction_count = info->gpu.max_instructions;
screen->specs.stream_count = info->gpu.stream_count;
screen->specs.pixel_pipes = info->gpu.pixel_pipes;
screen->specs.max_varyings = MIN2(info->gpu.max_varyings, ETNA_NUM_VARYINGS);

View file

@ -562,7 +562,7 @@ etna_vertex_elements_state_create(struct pipe_context *pctx,
start_offset = elements[idx].src_offset;
/* guaranteed by PIPE_CAP_MAX_VERTEX_BUFFERS */
assert(buffer_idx < screen->specs.stream_count);
assert(buffer_idx < screen->info->gpu.stream_count);
/* maximum vertex size is 256 bytes */
assert(element_size != 0 && (end_offset - start_offset) < 256);