[Mesa-dev] [PATCH 01/11] gallium, hud: add support for Hz units in driver queries

Marek Olšák maraeo at gmail.com
Mon Aug 3 05:42:03 PDT 2015


From: Marek Olšák <marek.olsak at amd.com>

---
 src/gallium/auxiliary/hud/hud_context.c | 6 ++++++
 src/gallium/include/pipe/p_defines.h    | 2 ++
 2 files changed, 8 insertions(+)

diff --git a/src/gallium/auxiliary/hud/hud_context.c b/src/gallium/auxiliary/hud/hud_context.c
index 4631cd3..e10152e 100644
--- a/src/gallium/auxiliary/hud/hud_context.c
+++ b/src/gallium/auxiliary/hud/hud_context.c
@@ -240,6 +240,8 @@ number_to_human_readable(uint64_t num, enum pipe_driver_query_type type,
       {"", " k", " M", " G", " T", " P", " E"};
    static const char *time_units[] =
       {" us", " ms", " s"};  /* based on microseconds */
+   static const char *hz_units[] =
+      {" Hz", " KHz", " MHz", " GHz"};
    const char *suffix;
    double divisor = (type == PIPE_DRIVER_QUERY_TYPE_BYTES) ? 1024 : 1000;
    int unit = 0;
@@ -262,6 +264,10 @@ number_to_human_readable(uint64_t num, enum pipe_driver_query_type type,
       assert(unit < ARRAY_SIZE(byte_units));
       suffix = byte_units[unit];
       break;
+   case PIPE_DRIVER_QUERY_TYPE_HZ:
+      assert(unit < ARRAY_SIZE(hz_units));
+      suffix = hz_units[unit];
+      break;
    default:
       assert(unit < ARRAY_SIZE(metric_units));
       suffix = metric_units[unit];
diff --git a/src/gallium/include/pipe/p_defines.h b/src/gallium/include/pipe/p_defines.h
index 8f64679..f311d16 100644
--- a/src/gallium/include/pipe/p_defines.h
+++ b/src/gallium/include/pipe/p_defines.h
@@ -779,6 +779,7 @@ union pipe_query_result
    /* PIPE_QUERY_PRIMITIVES_GENERATED */
    /* PIPE_QUERY_PRIMITIVES_EMITTED */
    /* PIPE_DRIVER_QUERY_TYPE_UINT64 */
+   /* PIPE_DRIVER_QUERY_TYPE_HZ */
    uint64_t u64;
 
    /* PIPE_DRIVER_QUERY_TYPE_UINT */
@@ -813,6 +814,7 @@ enum pipe_driver_query_type
    PIPE_DRIVER_QUERY_TYPE_PERCENTAGE   = 3,
    PIPE_DRIVER_QUERY_TYPE_BYTES        = 4,
    PIPE_DRIVER_QUERY_TYPE_MICROSECONDS = 5,
+   PIPE_DRIVER_QUERY_TYPE_HZ           = 6,
 };
 
 enum pipe_driver_query_group_type
-- 
2.1.4



More information about the mesa-dev mailing list