summaryrefslogtreecommitdiff
path: root/src/gallium
diff options
context:
space:
mode:
authorEric Anholt <eric@anholt.net>2014-09-05 14:17:27 -0700
committerEric Anholt <eric@anholt.net>2014-09-09 07:29:12 -0700
commita894898255c8e016d56afa08c26a4fc54d0eab13 (patch)
treea30b726a6ddb39a69bd736538628b5046b8f617d /src/gallium
parent840f38112026e9f71edd3dba7f88e09dec57b960 (diff)
vc4: Add a debug flag for flushing after every draw.
It was useful on i965, but it's even more useful for debugging tiled renderers.
Diffstat (limited to 'src/gallium')
-rw-r--r--src/gallium/drivers/vc4/vc4_draw.c3
-rw-r--r--src/gallium/drivers/vc4/vc4_screen.c2
-rw-r--r--src/gallium/drivers/vc4/vc4_screen.h1
3 files changed, 6 insertions, 0 deletions
diff --git a/src/gallium/drivers/vc4/vc4_draw.c b/src/gallium/drivers/vc4/vc4_draw.c
index cf3fc03d222..311be6b7ec4 100644
--- a/src/gallium/drivers/vc4/vc4_draw.c
+++ b/src/gallium/drivers/vc4/vc4_draw.c
@@ -193,6 +193,9 @@ vc4_draw_vbo(struct pipe_context *pctx, const struct pipe_draw_info *info)
vc4->resolve |= PIPE_CLEAR_COLOR0;
vc4->shader_rec_count++;
+
+ if (vc4_debug & VC4_DEBUG_ALWAYS_FLUSH)
+ vc4_flush(pctx);
}
static uint32_t
diff --git a/src/gallium/drivers/vc4/vc4_screen.c b/src/gallium/drivers/vc4/vc4_screen.c
index 793f8d39664..49f5228ab39 100644
--- a/src/gallium/drivers/vc4/vc4_screen.c
+++ b/src/gallium/drivers/vc4/vc4_screen.c
@@ -50,6 +50,8 @@ static const struct debug_named_value debug_options[] = {
"Print during performance-related events" },
{ "norast", VC4_DEBUG_NORAST,
"Skip actual hardware execution of commands" },
+ { "always_flush", VC4_DEBUG_ALWAYS_FLUSH,
+ "Flush after each draw call" },
{ NULL }
};
diff --git a/src/gallium/drivers/vc4/vc4_screen.h b/src/gallium/drivers/vc4/vc4_screen.h
index a45a6e7a365..470cb06e2bf 100644
--- a/src/gallium/drivers/vc4/vc4_screen.h
+++ b/src/gallium/drivers/vc4/vc4_screen.h
@@ -36,6 +36,7 @@ struct vc4_bo;
#define VC4_DEBUG_SHADERDB 0x0010
#define VC4_DEBUG_PERF 0x0020
#define VC4_DEBUG_NORAST 0x0040
+#define VC4_DEBUG_ALWAYS_FLUSH 0x0080
#define VC4_MAX_MIP_LEVELS 12
#define VC4_MAX_TEXTURE_SAMPLERS 16