diff options
Diffstat (limited to 'src/gallium/drivers/vc5/vc5_context.c')
-rw-r--r-- | src/gallium/drivers/vc5/vc5_context.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/gallium/drivers/vc5/vc5_context.c b/src/gallium/drivers/vc5/vc5_context.c index 9403f8ffdd4..b6d1234879b 100644 --- a/src/gallium/drivers/vc5/vc5_context.c +++ b/src/gallium/drivers/vc5/vc5_context.c @@ -60,8 +60,7 @@ vc5_pipe_flush(struct pipe_context *pctx, struct pipe_fence_handle **fence, if (fence) { struct pipe_screen *screen = pctx->screen; - struct vc5_fence *f = vc5_fence_create(vc5->screen, - vc5->last_emit_seqno); + struct vc5_fence *f = vc5_fence_create(vc5); screen->fence_reference(screen, fence, NULL); *fence = (struct pipe_fence_handle *)f; } @@ -128,6 +127,13 @@ vc5_context_create(struct pipe_screen *pscreen, void *priv, unsigned flags) vc5->screen = screen; + int ret = drmSyncobjCreate(screen->fd, DRM_SYNCOBJ_CREATE_SIGNALED, + &vc5->out_sync); + if (ret) { + ralloc_free(vc5); + return NULL; + } + pctx->screen = pscreen; pctx->priv = priv; pctx->destroy = vc5_context_destroy; |