Mesa (master): freedreno: add debug option to disable GMEM bypass

Rob Clark robclark at kemper.freedesktop.org
Sat Sep 14 17:32:51 UTC 2013


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

Author: Rob Clark <robclark at freedesktop.org>
Date:   Tue Sep 10 11:35:58 2013 -0400

freedreno: add debug option to disable GMEM bypass

Useful for debugging.

Signed-off-by: Rob Clark <robclark at freedesktop.org>

---

 src/gallium/drivers/freedreno/freedreno_gmem.c   |    2 +-
 src/gallium/drivers/freedreno/freedreno_screen.c |    1 +
 src/gallium/drivers/freedreno/freedreno_util.h   |    1 +
 3 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/src/gallium/drivers/freedreno/freedreno_gmem.c b/src/gallium/drivers/freedreno/freedreno_gmem.c
index 3d959c6..8455b73 100644
--- a/src/gallium/drivers/freedreno/freedreno_gmem.c
+++ b/src/gallium/drivers/freedreno/freedreno_gmem.c
@@ -204,7 +204,7 @@ fd_gmem_render_tiles(struct pipe_context *pctx)
 		if (ctx->cleared || ctx->gmem_reason || (ctx->num_draws > 5)) {
 			DBG("GMEM: cleared=%x, gmem_reason=%x, num_draws=%u",
 				ctx->cleared, ctx->gmem_reason, ctx->num_draws);
-		} else {
+		} else if (!(fd_mesa_debug & FD_DBG_DBYPASS)) {
 			sysmem = true;
 		}
 	}
diff --git a/src/gallium/drivers/freedreno/freedreno_screen.c b/src/gallium/drivers/freedreno/freedreno_screen.c
index eada1af..a038a77 100644
--- a/src/gallium/drivers/freedreno/freedreno_screen.c
+++ b/src/gallium/drivers/freedreno/freedreno_screen.c
@@ -62,6 +62,7 @@ static const struct debug_named_value debug_options[] = {
 		{"dgmem",     FD_DBG_DGMEM,  "Mark all state dirty after GMEM tile pass"},
 		{"dscis",     FD_DBG_DSCIS,  "Disable scissor optimization"},
 		{"direct",    FD_DBG_DIRECT, "Force inline (SS_DIRECT) state loads"},
+		{"dbypass",   FD_DBG_DBYPASS,"Disable GMEM bypass"},
 		DEBUG_NAMED_VALUE_END
 };
 
diff --git a/src/gallium/drivers/freedreno/freedreno_util.h b/src/gallium/drivers/freedreno/freedreno_util.h
index 4c7c78b..a189e1a 100644
--- a/src/gallium/drivers/freedreno/freedreno_util.h
+++ b/src/gallium/drivers/freedreno/freedreno_util.h
@@ -58,6 +58,7 @@ enum adreno_stencil_op fd_stencil_op(unsigned op);
 #define FD_DBG_DGMEM    0x08
 #define FD_DBG_DSCIS    0x10
 #define FD_DBG_DIRECT   0x20
+#define FD_DBG_DBYPASS  0x40
 extern int fd_mesa_debug;
 
 #define DBG(fmt, ...) \




More information about the mesa-commit mailing list