Mesa (master): etnaviv: add query_group_info for sw counters

Christian Gmeiner austriancoder at kemper.freedesktop.org
Thu Mar 8 19:47:31 UTC 2018


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

Author: Christian Gmeiner <christian.gmeiner at gmail.com>
Date:   Mon Mar  5 23:26:42 2018 +0100

etnaviv: add query_group_info for sw counters

Signed-off-by: Christian Gmeiner <christian.gmeiner at gmail.com>
Reviewed-by: Lucas Stach <l.stach at pengutronix.de>

---

 src/gallium/drivers/etnaviv/etnaviv_query_sw.c | 30 ++++++++++++++++++++------
 src/gallium/drivers/etnaviv/etnaviv_query_sw.h |  5 +++++
 2 files changed, 29 insertions(+), 6 deletions(-)

diff --git a/src/gallium/drivers/etnaviv/etnaviv_query_sw.c b/src/gallium/drivers/etnaviv/etnaviv_query_sw.c
index 2e65065b28..f955d8e210 100644
--- a/src/gallium/drivers/etnaviv/etnaviv_query_sw.c
+++ b/src/gallium/drivers/etnaviv/etnaviv_query_sw.c
@@ -118,16 +118,16 @@ etna_sw_create_query(struct etna_context *ctx, unsigned query_type)
    return q;
 }
 
+static const struct pipe_driver_query_info list[] = {
+   {"prims-emitted", PIPE_QUERY_PRIMITIVES_EMITTED, { 0 }},
+   {"draw-calls", ETNA_QUERY_DRAW_CALLS, { 0 }},
+   {"rs-operations", ETNA_QUERY_RS_OPERATIONS, { 0 }},
+};
+
 int
 etna_sw_get_driver_query_info(struct pipe_screen *pscreen, unsigned index,
                               struct pipe_driver_query_info *info)
 {
-   static const struct pipe_driver_query_info list[] = {
-      {"prims-emitted", PIPE_QUERY_PRIMITIVES_EMITTED, { 0 }},
-      {"draw-calls", ETNA_QUERY_DRAW_CALLS, { 0 }},
-      {"rs-operations", ETNA_QUERY_RS_OPERATIONS, { 0 }},
-   };
-
    if (!info)
       return ARRAY_SIZE(list);
 
@@ -138,3 +138,21 @@ etna_sw_get_driver_query_info(struct pipe_screen *pscreen, unsigned index,
 
    return 1;
 }
+
+int
+etna_sw_get_driver_query_group_info(struct pipe_screen *pscreen,
+                                    unsigned index,
+                                    struct pipe_driver_query_group_info *info)
+{
+   if (!info)
+      return ARRAY_SIZE(list);
+
+   if (index != 0)
+      return 0;
+
+   info->name = "driver";
+   info->max_active_queries = ARRAY_SIZE(list);
+   info->num_queries = ARRAY_SIZE(list);
+
+   return 1;
+}
diff --git a/src/gallium/drivers/etnaviv/etnaviv_query_sw.h b/src/gallium/drivers/etnaviv/etnaviv_query_sw.h
index 9321147094..f5a2dbef1a 100644
--- a/src/gallium/drivers/etnaviv/etnaviv_query_sw.h
+++ b/src/gallium/drivers/etnaviv/etnaviv_query_sw.h
@@ -51,4 +51,9 @@ int
 etna_sw_get_driver_query_info(struct pipe_screen *pscreen, unsigned index,
                               struct pipe_driver_query_info *info);
 
+int
+etna_sw_get_driver_query_group_info(struct pipe_screen *pscreen,
+                                    unsigned index,
+                                    struct pipe_driver_query_group_info *info);
+
 #endif




More information about the mesa-commit mailing list