aboutsummaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/freedreno/a2xx
diff options
context:
space:
mode:
authorIlia Mirkin <[email protected]>2015-03-17 01:02:32 -0400
committerIlia Mirkin <[email protected]>2015-03-28 14:54:41 -0400
commit995f55a6cedfd47a2aed75178a1b0caed7059f20 (patch)
treed04dc337c527a61aaef5d90ef2fe0b93641e9ca5 /src/gallium/drivers/freedreno/a2xx
parent7fc5da8b9392042b5f8a989d2afa49ea1944f9a9 (diff)
freedreno/a3xx: make vs-set point size work
This appears to need the A2XX version of the point list, so select it at draw time if necessary. Experimentally, always using the A2XX version causes hangs when PSIZE isn't actually emitted. Signed-off-by: Ilia Mirkin <[email protected]>
Diffstat (limited to 'src/gallium/drivers/freedreno/a2xx')
-rw-r--r--src/gallium/drivers/freedreno/a2xx/fd2_draw.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/gallium/drivers/freedreno/a2xx/fd2_draw.c b/src/gallium/drivers/freedreno/a2xx/fd2_draw.c
index dfc7202c446..f2efd5f2eb0 100644
--- a/src/gallium/drivers/freedreno/a2xx/fd2_draw.c
+++ b/src/gallium/drivers/freedreno/a2xx/fd2_draw.c
@@ -107,7 +107,8 @@ fd2_draw_vbo(struct fd_context *ctx, const struct pipe_draw_info *info)
OUT_RING(ring, info->max_index); /* VGT_MAX_VTX_INDX */
OUT_RING(ring, info->min_index); /* VGT_MIN_VTX_INDX */
- fd_draw_emit(ctx, ring, IGNORE_VISIBILITY, info);
+ fd_draw_emit(ctx, ring, ctx->primtypes[info->mode],
+ IGNORE_VISIBILITY, info);
OUT_PKT3(ring, CP_SET_CONSTANT, 2);
OUT_RING(ring, CP_REG(REG_A2XX_UNKNOWN_2010));