diff options
author | Rob Clark <[email protected]> | 2016-08-15 14:27:10 -0400 |
---|---|---|
committer | Rob Clark <[email protected]> | 2016-12-01 20:24:46 -0500 |
commit | 0b98e84e9ba082b9aa00b24fded3fb56224c6fc6 (patch) | |
tree | 8f3800c82abf2e071d2539e5a08d73f6d2bf5ad3 /src/gallium/drivers/freedreno/freedreno_gmem.c | |
parent | 16f6ceaca9e25f86bcdc509fc0abb48e2d51c3fa (diff) |
freedreno: native fence fd support
Signed-off-by: Rob Clark <[email protected]>
Diffstat (limited to 'src/gallium/drivers/freedreno/freedreno_gmem.c')
-rw-r--r-- | src/gallium/drivers/freedreno/freedreno_gmem.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/gallium/drivers/freedreno/freedreno_gmem.c b/src/gallium/drivers/freedreno/freedreno_gmem.c index 6d243c6d1e2..69fb16d058b 100644 --- a/src/gallium/drivers/freedreno/freedreno_gmem.c +++ b/src/gallium/drivers/freedreno/freedreno_gmem.c @@ -399,10 +399,13 @@ fd_gmem_render_tiles(struct fd_batch *batch) ctx->stats.batch_gmem++; } - fd_ringbuffer_flush(batch->gmem); + int out_fence_fd = -1; + fd_ringbuffer_flush2(batch->gmem, batch->in_fence_fd, + batch->needs_out_fence_fd ? &out_fence_fd : NULL); fd_fence_ref(&ctx->screen->base, &ctx->last_fence, NULL); - ctx->last_fence = fd_fence_create(ctx, fd_ringbuffer_timestamp(batch->gmem)); + ctx->last_fence = fd_fence_create(ctx, + fd_ringbuffer_timestamp(batch->gmem), out_fence_fd); } /* tile needs restore if it isn't completely contained within the |