summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/iris/iris_draw.c
diff options
context:
space:
mode:
authorKenneth Graunke <[email protected]>2018-09-08 19:43:34 -0700
committerKenneth Graunke <[email protected]>2019-02-21 10:26:08 -0800
commiteff081cdd9524f787339c13433b6b7758be474df (patch)
tree01be69d3985297bff59b39aee741e649d65dad88 /src/gallium/drivers/iris/iris_draw.c
parent148e315d9651a9b5f25d166194f7bd2f8cff2440 (diff)
iris: Support multiple binder BOs, update Surface State Base Address
Diffstat (limited to 'src/gallium/drivers/iris/iris_draw.c')
-rw-r--r--src/gallium/drivers/iris/iris_draw.c16
1 files changed, 2 insertions, 14 deletions
diff --git a/src/gallium/drivers/iris/iris_draw.c b/src/gallium/drivers/iris/iris_draw.c
index f6911350a7b..0567bbac72e 100644
--- a/src/gallium/drivers/iris/iris_draw.c
+++ b/src/gallium/drivers/iris/iris_draw.c
@@ -80,21 +80,9 @@ iris_draw_vbo(struct pipe_context *ctx, const struct pipe_draw_info *info)
iris_predraw_resolve_inputs(ice, batch);
iris_predraw_resolve_framebuffer(ice, batch);
- if (iris_binder_is_empty(&batch->binder)) {
- ice->state.dirty |= IRIS_DIRTY_BINDINGS_VS |
- IRIS_DIRTY_BINDINGS_TCS |
- IRIS_DIRTY_BINDINGS_TES |
- IRIS_DIRTY_BINDINGS_GS |
- IRIS_DIRTY_BINDINGS_FS;
- }
+ iris_binder_reserve_3d(ice);
- if (iris_binder_reserve_3d(batch, ice)) {
- ice->state.dirty |= IRIS_DIRTY_BINDINGS_VS |
- IRIS_DIRTY_BINDINGS_TCS |
- IRIS_DIRTY_BINDINGS_TES |
- IRIS_DIRTY_BINDINGS_GS |
- IRIS_DIRTY_BINDINGS_FS;
- }
+ ice->vtbl.update_surface_base_address(batch, &ice->state.binder);
ice->vtbl.upload_render_state(ice, batch, info);
ice->state.dirty = 0ull;