Mesa (staging/18.3): radeonsi: go back to using bottom-of-pipe for beginning of TIME_ELAPSED

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Fri Nov 23 11:52:07 UTC 2018


Module: Mesa
Branch: staging/18.3
Commit: 3036ffa1a2300111a5808fc9b295488723176287
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=3036ffa1a2300111a5808fc9b295488723176287

Author: Marek Olšák <marek.olsak at amd.com>
Date:   Tue Nov 13 16:19:42 2018 -0500

radeonsi: go back to using bottom-of-pipe for beginning of TIME_ELAPSED

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=102597

Cc: 18.3 <mesa-stable at lists.freedesktop.org>
Tested-by: Dieter Nützel <Dieter at nuetzel-hh.de>
Reviewed-by: Dave Airlie <airlied at redhat.com>
(cherry picked from commit ea9f95e2a67eca90bb84eea24e7b4b804b3b1345)

---

 src/gallium/drivers/radeonsi/si_query.c | 15 ++++-----------
 1 file changed, 4 insertions(+), 11 deletions(-)

diff --git a/src/gallium/drivers/radeonsi/si_query.c b/src/gallium/drivers/radeonsi/si_query.c
index 9b09c74d48..7a2c7afdbf 100644
--- a/src/gallium/drivers/radeonsi/si_query.c
+++ b/src/gallium/drivers/radeonsi/si_query.c
@@ -793,17 +793,10 @@ static void si_query_hw_do_emit_start(struct si_context *sctx,
 			emit_sample_streamout(cs, va + 32 * stream, stream);
 		break;
 	case PIPE_QUERY_TIME_ELAPSED:
-		/* Write the timestamp from the CP not waiting for
-		 * outstanding draws (top-of-pipe).
-		 */
-		radeon_emit(cs, PKT3(PKT3_COPY_DATA, 4, 0));
-		radeon_emit(cs, COPY_DATA_COUNT_SEL |
-				COPY_DATA_SRC_SEL(COPY_DATA_TIMESTAMP) |
-				COPY_DATA_DST_SEL(COPY_DATA_DST_MEM));
-		radeon_emit(cs, 0);
-		radeon_emit(cs, 0);
-		radeon_emit(cs, va);
-		radeon_emit(cs, va >> 32);
+		si_cp_release_mem(sctx, V_028A90_BOTTOM_OF_PIPE_TS, 0,
+				  EOP_DST_SEL_MEM, EOP_INT_SEL_NONE,
+				  EOP_DATA_SEL_TIMESTAMP, NULL, va,
+				  0, query->b.type);
 		break;
 	case PIPE_QUERY_PIPELINE_STATISTICS:
 		radeon_emit(cs, PKT3(PKT3_EVENT_WRITE, 2, 0));




More information about the mesa-commit mailing list