summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/panfrost
diff options
context:
space:
mode:
authorAlyssa Rosenzweig <[email protected]>2019-07-31 14:27:53 -0700
committerAlyssa Rosenzweig <[email protected]>2019-08-01 16:23:03 -0700
commit871c02b12ee7013b18d379393e41986a27d2c2a1 (patch)
treeea76d3c3023d382f10ca97d57228474aefcaf1b5 /src/gallium/drivers/panfrost
parent748ccbc80843866c277029d9309db6c65186c6f7 (diff)
panfrost: Invoke compute shader according to grid info
We already have helpers for packing invocations (due to its role in instanced vertex shaders), so we can reuse this drop in for compute shaders. Signed-off-by: Alyssa Rosenzweig <[email protected]>
Diffstat (limited to 'src/gallium/drivers/panfrost')
-rw-r--r--src/gallium/drivers/panfrost/pan_compute.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/gallium/drivers/panfrost/pan_compute.c b/src/gallium/drivers/panfrost/pan_compute.c
index 34d27904b3f..ee3aa5edb36 100644
--- a/src/gallium/drivers/panfrost/pan_compute.c
+++ b/src/gallium/drivers/panfrost/pan_compute.c
@@ -85,6 +85,12 @@ panfrost_launch_grid(struct pipe_context *pipe,
payload->postfix.framebuffer =
panfrost_upload_transient(ctx, &compute_fbd, sizeof(compute_fbd));
+ /* Invoke according to the grid info */
+
+ panfrost_pack_work_groups_compute(&payload->prefix,
+ info->grid[0], info->grid[1], info->grid[2],
+ info->block[0], info->block[1], info->block[2]);
+
/* Upload the payload */
struct panfrost_transfer transfer = panfrost_allocate_transient(ctx, sizeof(job) + sizeof(*payload));