summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/i915
diff options
context:
space:
mode:
authorMarek Olšák <marek.olsak@amd.com>2020-11-01 09:04:40 -0500
committerMarge Bot <eric+marge@anholt.net>2020-11-18 01:41:25 +0000
commit1cd455b17b7ac9260fb1e943c5993e8cf747abb1 (patch)
tree30e0acb62fb0b5f287b698ea4f7d026832949762 /src/gallium/drivers/i915
parent80b391077f66eff22a544be679d4b918691026ae (diff)
gallium: extend draw_vbo to support multi draws
Essentially rename multi_draw to draw_vbo and remove start and count from pipe_draw_info. This is only an interface change. It doesn't add multi draw support anywhere. Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7441>
Diffstat (limited to 'src/gallium/drivers/i915')
-rw-r--r--src/gallium/drivers/i915/i915_context.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/gallium/drivers/i915/i915_context.c b/src/gallium/drivers/i915/i915_context.c
index 7750f906405..c778bb87c7e 100644
--- a/src/gallium/drivers/i915/i915_context.c
+++ b/src/gallium/drivers/i915/i915_context.c
@@ -52,14 +52,16 @@ DEBUG_GET_ONCE_BOOL_OPTION(i915_no_vbuf, "I915_NO_VBUF", FALSE)
static void
i915_draw_vbo(struct pipe_context *pipe, const struct pipe_draw_info *info,
- const struct pipe_draw_indirect_info *indirect)
+ const struct pipe_draw_indirect_info *indirect,
+ const struct pipe_draw_start_count *draws,
+ unsigned num_draws)
{
struct i915_context *i915 = i915_context(pipe);
struct draw_context *draw = i915->draw;
const void *mapped_indices = NULL;
unsigned i;
- if (!u_trim_pipe_prim(info->mode, (unsigned*)&info->count))
+ if (!u_trim_pipe_prim(info->mode, (unsigned*)&draws[0].count))
return;
/*
@@ -110,7 +112,7 @@ i915_draw_vbo(struct pipe_context *pipe, const struct pipe_draw_info *info,
/*
* Do the drawing
*/
- draw_vbo(i915->draw, info, NULL);
+ draw_vbo(i915->draw, info, NULL, draws, num_draws);
/*
* unmap vertex/index buffers