summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/r600/evergreen_state.c
diff options
context:
space:
mode:
authorGlenn Kennard <[email protected]>2014-08-25 11:05:06 +0200
committerMarek Olšák <[email protected]>2014-09-01 21:12:03 +0200
commit8d0f6ff810e9bc16ef7c2fd8d5a34d12f2643f91 (patch)
tree8c98a79c7b9886266fd46a6572833e7e5d54b4c7 /src/gallium/drivers/r600/evergreen_state.c
parent482def592fede9c4c2f1e6944df42e8319dd6b78 (diff)
r600g: Implement sm5 geometry shader instancing
Requires Evergreen or later hardware. Signed-off-by: Glenn Kennard <[email protected]>
Diffstat (limited to 'src/gallium/drivers/r600/evergreen_state.c')
-rw-r--r--src/gallium/drivers/r600/evergreen_state.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/gallium/drivers/r600/evergreen_state.c b/src/gallium/drivers/r600/evergreen_state.c
index 9f0e82dd1c0..8ce31dca81e 100644
--- a/src/gallium/drivers/r600/evergreen_state.c
+++ b/src/gallium/drivers/r600/evergreen_state.c
@@ -2963,8 +2963,8 @@ void evergreen_update_gs_state(struct pipe_context *ctx, struct r600_pipe_shader
if (rctx->screen->b.info.drm_minor >= 35) {
r600_store_context_reg(cb, R_028B90_VGT_GS_INSTANCE_CNT,
- S_028B90_CNT(0) |
- S_028B90_ENABLE(0));
+ S_028B90_CNT(MIN2(rshader->gs_num_invocations, 127)) |
+ S_028B90_ENABLE(rshader->gs_num_invocations > 0));
}
r600_store_context_reg_seq(cb, R_02891C_SQ_GS_VERT_ITEMSIZE, 4);
r600_store_value(cb, cp_shader->ring_item_size >> 2);