From: Rob Clark Date: Tue, 26 Feb 2019 12:56:58 +0000 (-0500) Subject: freedreno/a6xx: fix DRAW_IDX_INDIRECT max_indicies X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=79180a05662e8df535ed7829f50084f17bb2c6be;p=mesa.git freedreno/a6xx: fix DRAW_IDX_INDIRECT max_indicies The indirect offset does not effect the index buffer size. Fixes all of dEQP-GLES31.functional.draw_indirect.compute_interop.large.drawelements_combined_grid_100x100_drawcount_* with drawcount > 1. Signed-off-by: Rob Clark --- diff --git a/src/gallium/drivers/freedreno/a6xx/fd6_draw.c b/src/gallium/drivers/freedreno/a6xx/fd6_draw.c index 9ed79cbcb7f..c278d09d9d6 100644 --- a/src/gallium/drivers/freedreno/a6xx/fd6_draw.c +++ b/src/gallium/drivers/freedreno/a6xx/fd6_draw.c @@ -53,8 +53,7 @@ draw_emit_indirect(struct fd_batch *batch, struct fd_ringbuffer *ring, if (info->index_size) { struct pipe_resource *idx = info->index.resource; - unsigned max_indicies = (idx->width0 - info->indirect->offset) / - info->index_size; + unsigned max_indicies = idx->width0 / info->index_size; OUT_PKT7(ring, CP_DRAW_INDX_INDIRECT, 6); OUT_RINGP(ring, DRAW4(primtype, DI_SRC_SEL_DMA,