From 7486b5d91ee0edec013cbc0aa9751ae644e52e67 Mon Sep 17 00:00:00 2001 From: Boris Brezillon Date: Sat, 17 Oct 2020 11:02:12 +0200 Subject: [PATCH] panfrost: Add specialized preload descriptors It's just easier to identify the different layouts this way. Signed-off-by: Boris Brezillon Reviewed-by: Alyssa Rosenzweig Part-of: --- src/gallium/drivers/panfrost/pan_assemble.c | 8 ++--- src/panfrost/bifrost/test/bi_submit.c | 4 +-- src/panfrost/lib/midgard.xml | 33 ++++++++++++++++++--- 3 files changed, 35 insertions(+), 10 deletions(-) diff --git a/src/gallium/drivers/panfrost/pan_assemble.c b/src/gallium/drivers/panfrost/pan_assemble.c index f237ded9118..6808a180a01 100644 --- a/src/gallium/drivers/panfrost/pan_assemble.c +++ b/src/gallium/drivers/panfrost/pan_assemble.c @@ -78,8 +78,8 @@ pan_prepare_bifrost_props(struct panfrost_shader_state *state, pan_prepare(&state->preload, PRELOAD); state->preload.uniform_count = state->uniform_count; - state->preload.vertex_id = true; - state->preload.instance_id = true; + state->preload.vertex.vertex_id = true; + state->preload.vertex.instance_id = true; break; case MESA_SHADER_FRAGMENT: pan_prepare(&state->properties, RENDERER_PROPERTIES); @@ -91,8 +91,8 @@ pan_prepare_bifrost_props(struct panfrost_shader_state *state, pan_prepare(&state->preload, PRELOAD); state->preload.uniform_count = state->uniform_count; - state->preload.fragment_position = state->reads_frag_coord; - state->preload.unknown = true; + state->preload.fragment.fragment_position = state->reads_frag_coord; + state->preload.fragment.coverage = true; break; default: unreachable("TODO"); diff --git a/src/panfrost/bifrost/test/bi_submit.c b/src/panfrost/bifrost/test/bi_submit.c index da3512c244e..cfa2aa30be6 100644 --- a/src/panfrost/bifrost/test/bi_submit.c +++ b/src/panfrost/bifrost/test/bi_submit.c @@ -178,8 +178,8 @@ bit_vertex(struct panfrost_device *dev, panfrost_program prog, cfg.shader.attribute_count = cfg.shader.varying_count = 1; cfg.properties.uniform_buffer_count = 1; cfg.properties.bifrost.zs_update_operation = MALI_PIXEL_KILL_STRONG_EARLY; - cfg.preload.vertex_id = true; - cfg.preload.instance_id = true; + cfg.preload.vertex.vertex_id = true; + cfg.preload.vertex.instance_id = true; cfg.preload.uniform_count = (sz_ubo / 16); } diff --git a/src/panfrost/lib/midgard.xml b/src/panfrost/lib/midgard.xml index df9c9ccfe48..ede4b0f08c0 100644 --- a/src/panfrost/lib/midgard.xml +++ b/src/panfrost/lib/midgard.xml @@ -680,7 +680,8 @@ - + + @@ -689,13 +690,37 @@ + + + + + + + + + + + + + + - + + + + + - + - + + + + + + +