mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-09 02:28:10 +02:00
panfrost: Pass a batch to panfrost_drm_submit_vs_fs_batch()
Given the function name it makes more sense to pass it a job batch directly. Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com> Reviewed-by: Daniel Stone <daniels@collabora.com> Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
This commit is contained in:
parent
2c526993bc
commit
beb18c6172
3 changed files with 9 additions and 9 deletions
|
|
@ -248,12 +248,12 @@ panfrost_drm_export_bo(struct panfrost_screen *screen, const struct panfrost_bo
|
|||
}
|
||||
|
||||
static int
|
||||
panfrost_drm_submit_batch(struct panfrost_context *ctx, u64 first_job_desc,
|
||||
panfrost_drm_submit_batch(struct panfrost_batch *batch, u64 first_job_desc,
|
||||
int reqs)
|
||||
{
|
||||
struct panfrost_context *ctx = batch->ctx;
|
||||
struct pipe_context *gallium = (struct pipe_context *) ctx;
|
||||
struct panfrost_screen *screen = pan_screen(gallium->screen);
|
||||
struct panfrost_batch *batch = panfrost_get_batch_for_fbo(ctx);
|
||||
struct drm_panfrost_submit submit = {0,};
|
||||
int *bo_handles, ret;
|
||||
|
||||
|
|
@ -293,23 +293,22 @@ panfrost_drm_submit_batch(struct panfrost_context *ctx, u64 first_job_desc,
|
|||
}
|
||||
|
||||
int
|
||||
panfrost_drm_submit_vs_fs_batch(struct panfrost_context *ctx, bool has_draws)
|
||||
panfrost_drm_submit_vs_fs_batch(struct panfrost_batch *batch, bool has_draws)
|
||||
{
|
||||
struct panfrost_context *ctx = batch->ctx;
|
||||
int ret = 0;
|
||||
|
||||
struct panfrost_batch *batch = panfrost_get_batch_for_fbo(ctx);
|
||||
|
||||
panfrost_batch_add_bo(batch, ctx->scratchpad.bo);
|
||||
panfrost_batch_add_bo(batch, ctx->tiler_heap.bo);
|
||||
panfrost_batch_add_bo(batch, batch->polygon_list);
|
||||
|
||||
if (batch->first_job.gpu) {
|
||||
ret = panfrost_drm_submit_batch(ctx, batch->first_job.gpu, 0);
|
||||
ret = panfrost_drm_submit_batch(batch, batch->first_job.gpu, 0);
|
||||
assert(!ret);
|
||||
}
|
||||
|
||||
if (batch->first_tiler.gpu || batch->clear) {
|
||||
ret = panfrost_drm_submit_batch(ctx,
|
||||
ret = panfrost_drm_submit_batch(batch,
|
||||
panfrost_fragment_job(ctx, has_draws),
|
||||
PANFROST_JD_REQ_FS);
|
||||
assert(!ret);
|
||||
|
|
|
|||
|
|
@ -211,7 +211,7 @@ panfrost_batch_submit(struct panfrost_context *ctx, struct panfrost_batch *batch
|
|||
|
||||
bool has_draws = batch->last_job.gpu;
|
||||
|
||||
ret = panfrost_drm_submit_vs_fs_batch(ctx, has_draws);
|
||||
ret = panfrost_drm_submit_vs_fs_batch(batch, has_draws);
|
||||
|
||||
if (ret)
|
||||
fprintf(stderr, "panfrost_batch_submit failed: %d\n", ret);
|
||||
|
|
|
|||
|
|
@ -39,6 +39,7 @@
|
|||
#include <panfrost-misc.h>
|
||||
#include "pan_allocate.h"
|
||||
|
||||
struct panfrost_batch;
|
||||
struct panfrost_context;
|
||||
struct panfrost_resource;
|
||||
struct panfrost_screen;
|
||||
|
|
@ -163,7 +164,7 @@ panfrost_drm_import_bo(struct panfrost_screen *screen, int fd);
|
|||
int
|
||||
panfrost_drm_export_bo(struct panfrost_screen *screen, const struct panfrost_bo *bo);
|
||||
int
|
||||
panfrost_drm_submit_vs_fs_batch(struct panfrost_context *ctx, bool has_draws);
|
||||
panfrost_drm_submit_vs_fs_batch(struct panfrost_batch *batch, bool has_draws);
|
||||
void
|
||||
panfrost_drm_force_flush_fragment(struct panfrost_context *ctx,
|
||||
struct pipe_fence_handle **fence);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue