From: Christoph Bumiller Date: Fri, 14 Oct 2011 20:22:04 +0000 (+0200) Subject: nv50,nvc0: reset base element in draw_arrays X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=6994b57a509cff1a1d0d013c0b175ec4d83117a0;p=mesa.git nv50,nvc0: reset base element in draw_arrays It affects VERTEX_BUFFER_FIRST,COUNT submission, too. --- diff --git a/src/gallium/drivers/nv50/nv50_vbo.c b/src/gallium/drivers/nv50/nv50_vbo.c index 82ac35e84ea..0ce19bec4af 100644 --- a/src/gallium/drivers/nv50/nv50_vbo.c +++ b/src/gallium/drivers/nv50/nv50_vbo.c @@ -404,6 +404,12 @@ nv50_draw_arrays(struct nv50_context *nv50, struct nouveau_channel *chan = nv50->screen->base.channel; unsigned prim; + if (nv50->state.index_bias) { + BEGIN_RING(chan, RING_3D(VB_ELEMENT_BASE), 1); + OUT_RING (chan, 0); + nv50->state.index_bias = 0; + } + prim = nv50_prim_gl(mode); while (instance_count--) { diff --git a/src/gallium/drivers/nvc0/nvc0_vbo.c b/src/gallium/drivers/nvc0/nvc0_vbo.c index 41b45521d8a..ac778a7491c 100644 --- a/src/gallium/drivers/nvc0/nvc0_vbo.c +++ b/src/gallium/drivers/nvc0/nvc0_vbo.c @@ -382,6 +382,11 @@ nvc0_draw_arrays(struct nvc0_context *nvc0, struct nouveau_channel *chan = nvc0->screen->base.channel; unsigned prim; + if (nvc0->state.index_bias) { + IMMED_RING(chan, RING_3D(VB_ELEMENT_BASE), 0); + nvc0->state.index_bias = 0; + } + prim = nvc0_prim_gl(mode); while (instance_count--) {