From babc3ad291b289e2bfe00e2d9e8496560d0993b3 Mon Sep 17 00:00:00 2001 From: Tomeu Vizoso Date: Thu, 20 Jun 2019 15:37:10 +0200 Subject: [PATCH] panfrost: Set job requirements during draw Right now we are doing it at a moment when we don't have all the information we need. Signed-off-by: Tomeu Vizoso Suggested-by: Alyssa Rosenzweig Acked-by: Rohan Garg Cc: Rohan Garg Fixes: bfca21b622df ("panfrost: Figure out job requirements in pan_job.c") --- src/gallium/drivers/panfrost/pan_context.c | 2 ++ src/gallium/drivers/panfrost/pan_job.c | 1 - 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/panfrost/pan_context.c b/src/gallium/drivers/panfrost/pan_context.c index c359d2ddafd..0b888fe3c64 100644 --- a/src/gallium/drivers/panfrost/pan_context.c +++ b/src/gallium/drivers/panfrost/pan_context.c @@ -1055,6 +1055,8 @@ panfrost_emit_for_draw(struct panfrost_context *ctx, bool with_vertex_data) SET_BIT(ctx->fragment_shader_core.unknown2_4, MALI_NO_MSAA, !msaa); } + panfrost_job_set_requirements(ctx, job); + if (ctx->occlusion_query) { ctx->payload_tiler.gl_enables |= MALI_OCCLUSION_QUERY | MALI_OCCLUSION_PRECISE; ctx->payload_tiler.postfix.occlusion_counter = ctx->occlusion_query->transfer.gpu; diff --git a/src/gallium/drivers/panfrost/pan_job.c b/src/gallium/drivers/panfrost/pan_job.c index 717676021b4..9c5d385e2ef 100644 --- a/src/gallium/drivers/panfrost/pan_job.c +++ b/src/gallium/drivers/panfrost/pan_job.c @@ -90,7 +90,6 @@ panfrost_get_job(struct panfrost_context *ctx, memcpy(&job->key, &key, sizeof(key)); _mesa_hash_table_insert(ctx->jobs, &job->key, job); - panfrost_job_set_requirements(ctx, job); return job; } -- 2.30.2