summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Gmeiner <christian.gmeiner@gmail.com>2018-03-25 22:30:02 +0200
committerChristian Gmeiner <christian.gmeiner@gmail.com>2018-04-08 22:21:04 +0200
commitf380ce13f0bfdc6a7b9d64395400ad79d3323cee (patch)
tree8378bc7a5bc6da1d2f5ec55509420137f1fb293d
parent3af0e228e5f998f5d16d496cab5e9c9e619ac26a (diff)
etnaviv: support RA performance counters
Signed-off-by: Christian Gmeiner <christian.gmeiner@gmail.com> Tested-by: Chris Healy <cphealy@gmail.com>
-rw-r--r--src/gallium/drivers/etnaviv/etnaviv_query_pm.c49
-rw-r--r--src/gallium/drivers/etnaviv/etnaviv_query_pm.h8
2 files changed, 57 insertions, 0 deletions
diff --git a/src/gallium/drivers/etnaviv/etnaviv_query_pm.c b/src/gallium/drivers/etnaviv/etnaviv_query_pm.c
index 759e3a5d09f..3601d4086cc 100644
--- a/src/gallium/drivers/etnaviv/etnaviv_query_pm.c
+++ b/src/gallium/drivers/etnaviv/etnaviv_query_pm.c
@@ -227,6 +227,55 @@ static const struct etna_perfmon_config query_config[] = {
.source = (const struct etna_perfmon_source[]) {
{ "SE", "CULLED_LINES_COUNT" }
}
+ },
+ {
+ .name = "ra-valid-pixel-count",
+ .type = ETNA_QUERY_RA_VALID_PIXEL_COUNT,
+ .source = (const struct etna_perfmon_source[]) {
+ { "RA", "VALID_PIXEL_COUNT" }
+ }
+ },
+ {
+ .name = "ra-total-quad-count",
+ .type = ETNA_QUERY_RA_TOTAL_QUAD_COUNT,
+ .source = (const struct etna_perfmon_source[]) {
+ { "RA", "TOTAL_QUAD_COUNT" }
+ }
+ },
+ {
+ .name = "ra-valid-quad-count-after-early-z",
+ .type = ETNA_QUERY_RA_VALID_QUAD_COUNT_AFTER_EARLY_Z,
+ .source = (const struct etna_perfmon_source[]) {
+ { "RA", "VALID_QUAD_COUNT_AFTER_EARLY_Z" }
+ }
+ },
+ {
+ .name = "ra-total-primitive-count",
+ .type = ETNA_QUERY_RA_TOTAL_PRIMITIVE_COUNT,
+ .source = (const struct etna_perfmon_source[]) {
+ { "RA", "TOTAL_PRIMITIVE_COUNT" }
+ }
+ },
+ {
+ .name = "ra-pipe-cache-miss-counter",
+ .type = ETNA_QUERY_RA_PIPE_CACHE_MISS_COUNTER,
+ .source = (const struct etna_perfmon_source[]) {
+ { "RA", "PIPE_CACHE_MISS_COUNTER" }
+ }
+ },
+ {
+ .name = "ra-prefetch-cache-miss-counter",
+ .type = ETNA_QUERY_RA_PREFETCH_CACHE_MISS_COUNTER,
+ .source = (const struct etna_perfmon_source[]) {
+ { "RA", "PREFETCH_CACHE_MISS_COUNTER" }
+ }
+ },
+ {
+ .name = "ra-pculled-quad-count",
+ .type = ETNA_QUERY_RA_CULLED_QUAD_COUNT,
+ .source = (const struct etna_perfmon_source[]) {
+ { "RA", "CULLED_QUAD_COUNT" }
+ }
}
};
diff --git a/src/gallium/drivers/etnaviv/etnaviv_query_pm.h b/src/gallium/drivers/etnaviv/etnaviv_query_pm.h
index d93d12c7182..01dd1353922 100644
--- a/src/gallium/drivers/etnaviv/etnaviv_query_pm.h
+++ b/src/gallium/drivers/etnaviv/etnaviv_query_pm.h
@@ -65,6 +65,14 @@ struct etna_screen;
#define ETNA_QUERY_SE_CULLED_TRIANGLE_COUNT (ETNA_PM_QUERY_BASE + 25)
#define ETNA_QUERY_SE_CULLED_LINES_COUNT (ETNA_PM_QUERY_BASE + 26)
+#define ETNA_QUERY_RA_VALID_PIXEL_COUNT (ETNA_PM_QUERY_BASE + 27)
+#define ETNA_QUERY_RA_TOTAL_QUAD_COUNT (ETNA_PM_QUERY_BASE + 28)
+#define ETNA_QUERY_RA_VALID_QUAD_COUNT_AFTER_EARLY_Z (ETNA_PM_QUERY_BASE + 29)
+#define ETNA_QUERY_RA_TOTAL_PRIMITIVE_COUNT (ETNA_PM_QUERY_BASE + 30)
+#define ETNA_QUERY_RA_PIPE_CACHE_MISS_COUNTER (ETNA_PM_QUERY_BASE + 31)
+#define ETNA_QUERY_RA_PREFETCH_CACHE_MISS_COUNTER (ETNA_PM_QUERY_BASE + 32)
+#define ETNA_QUERY_RA_CULLED_QUAD_COUNT (ETNA_PM_QUERY_BASE + 33)
+
struct etna_pm_query {
struct etna_query base;
struct etna_perfmon_signal *signal;