diff options
author | Christian Gmeiner <[email protected]> | 2018-03-25 22:29:57 +0200 |
---|---|---|
committer | Christian Gmeiner <[email protected]> | 2018-04-08 22:20:32 +0200 |
commit | d0bed0b4944dc2beb6371272c10fc1789ef5fa49 (patch) | |
tree | da497ddf01cc2f1f81144c236f9091aa749d6c5b /src | |
parent | 72d2043be06c4b0135177482ae95aa321286cc17 (diff) |
etnaviv: support HI performance counters
Signed-off-by: Christian Gmeiner <[email protected]>
Tested-by: Chris Healy <[email protected]>
Diffstat (limited to 'src')
-rw-r--r-- | src/gallium/drivers/etnaviv/etnaviv_query_pm.c | 35 | ||||
-rw-r--r-- | src/gallium/drivers/etnaviv/etnaviv_query_pm.h | 6 |
2 files changed, 41 insertions, 0 deletions
diff --git a/src/gallium/drivers/etnaviv/etnaviv_query_pm.c b/src/gallium/drivers/etnaviv/etnaviv_query_pm.c index 2b09e5dac14..2feca9d1dd9 100644 --- a/src/gallium/drivers/etnaviv/etnaviv_query_pm.c +++ b/src/gallium/drivers/etnaviv/etnaviv_query_pm.c @@ -46,6 +46,41 @@ struct etna_perfmon_config }; static const struct etna_perfmon_config query_config[] = { + { + .name = "hi-total-cyles", + .type = ETNA_QUERY_HI_TOTAL_CYCLES, + .source = (const struct etna_perfmon_source[]) { + { "HI", "TOTAL_CYCLES" } + } + }, + { + .name = "hi-idle-cyles", + .type = ETNA_QUERY_HI_IDLE_CYCLES, + .source = (const struct etna_perfmon_source[]) { + { "HI", "IDLE_CYCLES" } + } + }, + { + .name = "hi-axi-cycles-read-request-stalled", + .type = ETNA_QUERY_HI_AXI_CYCLES_READ_REQUEST_STALLED, + .source = (const struct etna_perfmon_source[]) { + { "HI", "AXI_CYCLES_READ_REQUEST_STALLED" } + } + }, + { + .name = "hi-axi-cycles-write-request-stalled", + .type = ETNA_QUERY_HI_AXI_CYCLES_WRITE_REQUEST_STALLED, + .source = (const struct etna_perfmon_source[]) { + { "HI", "AXI_CYCLES_WRITE_REQUEST_STALLED" } + } + }, + { + .name = "hi-axi-cycles-write-data-stalled", + .type = ETNA_QUERY_HI_AXI_CYCLES_WRITE_DATA_STALLED, + .source = (const struct etna_perfmon_source[]) { + { "HI", "AXI_CYCLES_WRITE_DATA_STALLED" } + } + } }; static const struct etna_perfmon_config * diff --git a/src/gallium/drivers/etnaviv/etnaviv_query_pm.h b/src/gallium/drivers/etnaviv/etnaviv_query_pm.h index 3d8cf1419bd..ce823cf3bfc 100644 --- a/src/gallium/drivers/etnaviv/etnaviv_query_pm.h +++ b/src/gallium/drivers/etnaviv/etnaviv_query_pm.h @@ -33,6 +33,12 @@ struct etna_screen; +#define ETNA_QUERY_HI_TOTAL_CYCLES (ETNA_PM_QUERY_BASE + 0) +#define ETNA_QUERY_HI_IDLE_CYCLES (ETNA_PM_QUERY_BASE + 1) +#define ETNA_QUERY_HI_AXI_CYCLES_READ_REQUEST_STALLED (ETNA_PM_QUERY_BASE + 2) +#define ETNA_QUERY_HI_AXI_CYCLES_WRITE_REQUEST_STALLED (ETNA_PM_QUERY_BASE + 3) +#define ETNA_QUERY_HI_AXI_CYCLES_WRITE_DATA_STALLED (ETNA_PM_QUERY_BASE + 4) + struct etna_pm_query { struct etna_query base; struct etna_perfmon_signal *signal; |