Mesa (master): r600g: compute CS space for streamout correctly, add comments

Marek Olšák mareko at kemper.freedesktop.org
Fri Jun 15 20:43:12 UTC 2012


Module: Mesa
Branch: master
Commit: f01594be0ee34758fc62274b9e967a2a4c3595df
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=f01594be0ee34758fc62274b9e967a2a4c3595df

Author: Marek Olšák <maraeo at gmail.com>
Date:   Thu Jun 14 22:25:50 2012 +0200

r600g: compute CS space for streamout correctly, add comments

SET_CONTEXT_REG was not counted in.

Reviewed-by: Alex Deucher <alexander.deucher at amd.com>

---

 src/gallium/drivers/r600/r600_hw_context.c |   13 +++++++------
 1 files changed, 7 insertions(+), 6 deletions(-)

diff --git a/src/gallium/drivers/r600/r600_hw_context.c b/src/gallium/drivers/r600/r600_hw_context.c
index 0fed95c..1b1c6f4 100644
--- a/src/gallium/drivers/r600/r600_hw_context.c
+++ b/src/gallium/drivers/r600/r600_hw_context.c
@@ -1324,15 +1324,16 @@ void r600_context_streamout_begin(struct r600_context *ctx)
 
 	ctx->num_cs_dw_streamout_end =
 		12 + /* flush_vgt_streamout */
-		util_bitcount(buffer_en) * 8 +
-		3;
+		util_bitcount(buffer_en) * 8 + /* STRMOUT_BUFFER_UPDATE */
+		3 /* set_streamout_enable(0) */;
 
 	r600_need_cs_space(ctx,
 			   12 + /* flush_vgt_streamout */
-			   6 + /* enables */
-			   util_bitcount(buffer_en & ctx->streamout_append_bitmask) * 8 +
-			   util_bitcount(buffer_en & ~ctx->streamout_append_bitmask) * 6 +
-			   (ctx->family > CHIP_R600 && ctx->family < CHIP_RV770 ? 2 : 0) +
+			   6 + /* set_streamout_enable */
+			   util_bitcount(buffer_en) * 7 + /* SET_CONTEXT_REG */
+			   util_bitcount(buffer_en & ctx->streamout_append_bitmask) * 8 + /* STRMOUT_BUFFER_UPDATE */
+			   util_bitcount(buffer_en & ~ctx->streamout_append_bitmask) * 6 + /* STRMOUT_BUFFER_UPDATE */
+			   (ctx->family > CHIP_R600 && ctx->family < CHIP_RV770 ? 2 : 0) + /* SURFACE_BASE_UPDATE */
 			   ctx->num_cs_dw_streamout_end, TRUE);
 
 	if (ctx->chip_class >= EVERGREEN) {




More information about the mesa-commit mailing list