1*61046927SAndroid Build Coastguard Worker /* 2*61046927SAndroid Build Coastguard Worker * Copyright © 2018 Rob Clark <[email protected]> 3*61046927SAndroid Build Coastguard Worker * SPDX-License-Identifier: MIT 4*61046927SAndroid Build Coastguard Worker * 5*61046927SAndroid Build Coastguard Worker * Authors: 6*61046927SAndroid Build Coastguard Worker * Rob Clark <[email protected]> 7*61046927SAndroid Build Coastguard Worker */ 8*61046927SAndroid Build Coastguard Worker 9*61046927SAndroid Build Coastguard Worker #ifndef FD5_PERFCNTR_H_ 10*61046927SAndroid Build Coastguard Worker #define FD5_PERFCNTR_H_ 11*61046927SAndroid Build Coastguard Worker 12*61046927SAndroid Build Coastguard Worker #include "util/half_float.h" 13*61046927SAndroid Build Coastguard Worker #include "util/u_math.h" 14*61046927SAndroid Build Coastguard Worker #include "adreno_common.xml.h" 15*61046927SAndroid Build Coastguard Worker #include "a5xx.xml.h" 16*61046927SAndroid Build Coastguard Worker 17*61046927SAndroid Build Coastguard Worker #define REG(_x) REG_A5XX_ ## _x 18*61046927SAndroid Build Coastguard Worker #include "freedreno_perfcntr.h" 19*61046927SAndroid Build Coastguard Worker 20*61046927SAndroid Build Coastguard Worker static const struct fd_perfcntr_counter cp_counters[] = { 21*61046927SAndroid Build Coastguard Worker //RESERVED: for kernel 22*61046927SAndroid Build Coastguard Worker // COUNTER(CP_PERFCTR_CP_SEL_0, RBBM_PERFCTR_CP_0_LO, RBBM_PERFCTR_CP_0_HI), 23*61046927SAndroid Build Coastguard Worker COUNTER(CP_PERFCTR_CP_SEL_1, RBBM_PERFCTR_CP_1_LO, RBBM_PERFCTR_CP_1_HI), 24*61046927SAndroid Build Coastguard Worker COUNTER(CP_PERFCTR_CP_SEL_2, RBBM_PERFCTR_CP_2_LO, RBBM_PERFCTR_CP_2_HI), 25*61046927SAndroid Build Coastguard Worker COUNTER(CP_PERFCTR_CP_SEL_3, RBBM_PERFCTR_CP_3_LO, RBBM_PERFCTR_CP_3_HI), 26*61046927SAndroid Build Coastguard Worker COUNTER(CP_PERFCTR_CP_SEL_4, RBBM_PERFCTR_CP_4_LO, RBBM_PERFCTR_CP_4_HI), 27*61046927SAndroid Build Coastguard Worker COUNTER(CP_PERFCTR_CP_SEL_5, RBBM_PERFCTR_CP_5_LO, RBBM_PERFCTR_CP_5_HI), 28*61046927SAndroid Build Coastguard Worker COUNTER(CP_PERFCTR_CP_SEL_6, RBBM_PERFCTR_CP_6_LO, RBBM_PERFCTR_CP_6_HI), 29*61046927SAndroid Build Coastguard Worker COUNTER(CP_PERFCTR_CP_SEL_7, RBBM_PERFCTR_CP_7_LO, RBBM_PERFCTR_CP_7_HI), 30*61046927SAndroid Build Coastguard Worker }; 31*61046927SAndroid Build Coastguard Worker 32*61046927SAndroid Build Coastguard Worker static const struct fd_perfcntr_countable cp_countables[] = { 33*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CP_ALWAYS_COUNT, UINT64, AVERAGE), 34*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CP_BUSY_GFX_CORE_IDLE, UINT64, AVERAGE), 35*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CP_BUSY_CYCLES, UINT64, AVERAGE), 36*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CP_PFP_IDLE, UINT64, AVERAGE), 37*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CP_PFP_BUSY_WORKING, UINT64, AVERAGE), 38*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CP_PFP_STALL_CYCLES_ANY, UINT64, AVERAGE), 39*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CP_PFP_STARVE_CYCLES_ANY, UINT64, AVERAGE), 40*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CP_PFP_ICACHE_MISS, UINT64, AVERAGE), 41*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CP_PFP_ICACHE_HIT, UINT64, AVERAGE), 42*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CP_PFP_MATCH_PM4_PKT_PROFILE, UINT64, AVERAGE), 43*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CP_ME_BUSY_WORKING, UINT64, AVERAGE), 44*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CP_ME_IDLE, UINT64, AVERAGE), 45*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CP_ME_STARVE_CYCLES_ANY, UINT64, AVERAGE), 46*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CP_ME_FIFO_EMPTY_PFP_IDLE, UINT64, AVERAGE), 47*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CP_ME_FIFO_EMPTY_PFP_BUSY, UINT64, AVERAGE), 48*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CP_ME_FIFO_FULL_ME_BUSY, UINT64, AVERAGE), 49*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CP_ME_FIFO_FULL_ME_NON_WORKING, UINT64, AVERAGE), 50*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CP_ME_STALL_CYCLES_ANY, UINT64, AVERAGE), 51*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CP_ME_ICACHE_MISS, UINT64, AVERAGE), 52*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CP_ME_ICACHE_HIT, UINT64, AVERAGE), 53*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CP_NUM_PREEMPTIONS, UINT64, AVERAGE), 54*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CP_PREEMPTION_REACTION_DELAY, UINT64, AVERAGE), 55*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CP_PREEMPTION_SWITCH_OUT_TIME, UINT64, AVERAGE), 56*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CP_PREEMPTION_SWITCH_IN_TIME, UINT64, AVERAGE), 57*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CP_DEAD_DRAWS_IN_BIN_RENDER, UINT64, AVERAGE), 58*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CP_PREDICATED_DRAWS_KILLED, UINT64, AVERAGE), 59*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CP_MODE_SWITCH, UINT64, AVERAGE), 60*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CP_ZPASS_DONE, UINT64, AVERAGE), 61*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CP_CONTEXT_DONE, UINT64, AVERAGE), 62*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CP_CACHE_FLUSH, UINT64, AVERAGE), 63*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CP_LONG_PREEMPTIONS, UINT64, AVERAGE), 64*61046927SAndroid Build Coastguard Worker }; 65*61046927SAndroid Build Coastguard Worker 66*61046927SAndroid Build Coastguard Worker static const struct fd_perfcntr_counter ccu_counters[] = { 67*61046927SAndroid Build Coastguard Worker COUNTER(RB_PERFCTR_CCU_SEL_0, RBBM_PERFCTR_CCU_0_LO, RBBM_PERFCTR_CCU_0_HI), 68*61046927SAndroid Build Coastguard Worker COUNTER(RB_PERFCTR_CCU_SEL_1, RBBM_PERFCTR_CCU_1_LO, RBBM_PERFCTR_CCU_1_HI), 69*61046927SAndroid Build Coastguard Worker COUNTER(RB_PERFCTR_CCU_SEL_2, RBBM_PERFCTR_CCU_2_LO, RBBM_PERFCTR_CCU_2_HI), 70*61046927SAndroid Build Coastguard Worker COUNTER(RB_PERFCTR_CCU_SEL_3, RBBM_PERFCTR_CCU_3_LO, RBBM_PERFCTR_CCU_3_HI), 71*61046927SAndroid Build Coastguard Worker }; 72*61046927SAndroid Build Coastguard Worker 73*61046927SAndroid Build Coastguard Worker static const struct fd_perfcntr_countable ccu_countables[] = { 74*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CCU_BUSY_CYCLES, UINT64, AVERAGE), 75*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CCU_STALL_CYCLES_RB_DEPTH_RETURN, UINT64, AVERAGE), 76*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CCU_STALL_CYCLES_RB_COLOR_RETURN, UINT64, AVERAGE), 77*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CCU_STARVE_CYCLES_FLAG_RETURN, UINT64, AVERAGE), 78*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CCU_DEPTH_BLOCKS, UINT64, AVERAGE), 79*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CCU_COLOR_BLOCKS, UINT64, AVERAGE), 80*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CCU_DEPTH_BLOCK_HIT, UINT64, AVERAGE), 81*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CCU_COLOR_BLOCK_HIT, UINT64, AVERAGE), 82*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CCU_PARTIAL_BLOCK_READ, UINT64, AVERAGE), 83*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CCU_GMEM_READ, UINT64, AVERAGE), 84*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CCU_GMEM_WRITE, UINT64, AVERAGE), 85*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CCU_DEPTH_READ_FLAG0_COUNT, UINT64, AVERAGE), 86*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CCU_DEPTH_READ_FLAG1_COUNT, UINT64, AVERAGE), 87*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CCU_DEPTH_READ_FLAG2_COUNT, UINT64, AVERAGE), 88*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CCU_DEPTH_READ_FLAG3_COUNT, UINT64, AVERAGE), 89*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CCU_DEPTH_READ_FLAG4_COUNT, UINT64, AVERAGE), 90*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CCU_COLOR_READ_FLAG0_COUNT, UINT64, AVERAGE), 91*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CCU_COLOR_READ_FLAG1_COUNT, UINT64, AVERAGE), 92*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CCU_COLOR_READ_FLAG2_COUNT, UINT64, AVERAGE), 93*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CCU_COLOR_READ_FLAG3_COUNT, UINT64, AVERAGE), 94*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CCU_COLOR_READ_FLAG4_COUNT, UINT64, AVERAGE), 95*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CCU_2D_BUSY_CYCLES, UINT64, AVERAGE), 96*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CCU_2D_RD_REQ, UINT64, AVERAGE), 97*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CCU_2D_WR_REQ, UINT64, AVERAGE), 98*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CCU_2D_REORDER_STARVE_CYCLES, UINT64, AVERAGE), 99*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_CCU_2D_PIXELS, UINT64, AVERAGE), 100*61046927SAndroid Build Coastguard Worker }; 101*61046927SAndroid Build Coastguard Worker 102*61046927SAndroid Build Coastguard Worker static const struct fd_perfcntr_counter tse_counters[] = { 103*61046927SAndroid Build Coastguard Worker COUNTER(GRAS_PERFCTR_TSE_SEL_0, RBBM_PERFCTR_TSE_0_LO, RBBM_PERFCTR_TSE_0_HI), 104*61046927SAndroid Build Coastguard Worker COUNTER(GRAS_PERFCTR_TSE_SEL_1, RBBM_PERFCTR_TSE_1_LO, RBBM_PERFCTR_TSE_1_HI), 105*61046927SAndroid Build Coastguard Worker COUNTER(GRAS_PERFCTR_TSE_SEL_2, RBBM_PERFCTR_TSE_2_LO, RBBM_PERFCTR_TSE_2_HI), 106*61046927SAndroid Build Coastguard Worker COUNTER(GRAS_PERFCTR_TSE_SEL_3, RBBM_PERFCTR_TSE_3_LO, RBBM_PERFCTR_TSE_3_HI), 107*61046927SAndroid Build Coastguard Worker }; 108*61046927SAndroid Build Coastguard Worker 109*61046927SAndroid Build Coastguard Worker static const struct fd_perfcntr_countable tse_countables[] = { 110*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TSE_BUSY_CYCLES, UINT64, AVERAGE), 111*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TSE_CLIPPING_CYCLES, UINT64, AVERAGE), 112*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TSE_STALL_CYCLES_RAS, UINT64, AVERAGE), 113*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TSE_STALL_CYCLES_LRZ_BARYPLANE, UINT64, AVERAGE), 114*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TSE_STALL_CYCLES_LRZ_ZPLANE, UINT64, AVERAGE), 115*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TSE_STARVE_CYCLES_PC, UINT64, AVERAGE), 116*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TSE_INPUT_PRIM, UINT64, AVERAGE), 117*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TSE_INPUT_NULL_PRIM, UINT64, AVERAGE), 118*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TSE_TRIVAL_REJ_PRIM, UINT64, AVERAGE), 119*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TSE_CLIPPED_PRIM, UINT64, AVERAGE), 120*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TSE_ZERO_AREA_PRIM, UINT64, AVERAGE), 121*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TSE_FACENESS_CULLED_PRIM, UINT64, AVERAGE), 122*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TSE_ZERO_PIXEL_PRIM, UINT64, AVERAGE), 123*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TSE_OUTPUT_NULL_PRIM, UINT64, AVERAGE), 124*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TSE_OUTPUT_VISIBLE_PRIM, UINT64, AVERAGE), 125*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TSE_CINVOCATION, UINT64, AVERAGE), 126*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TSE_CPRIMITIVES, UINT64, AVERAGE), 127*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TSE_2D_INPUT_PRIM, UINT64, AVERAGE), 128*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TSE_2D_ALIVE_CLCLES, UINT64, AVERAGE), 129*61046927SAndroid Build Coastguard Worker }; 130*61046927SAndroid Build Coastguard Worker 131*61046927SAndroid Build Coastguard Worker static const struct fd_perfcntr_counter ras_counters[] = { 132*61046927SAndroid Build Coastguard Worker COUNTER(GRAS_PERFCTR_RAS_SEL_0, RBBM_PERFCTR_RAS_0_LO, RBBM_PERFCTR_RAS_0_HI), 133*61046927SAndroid Build Coastguard Worker COUNTER(GRAS_PERFCTR_RAS_SEL_1, RBBM_PERFCTR_RAS_1_LO, RBBM_PERFCTR_RAS_1_HI), 134*61046927SAndroid Build Coastguard Worker COUNTER(GRAS_PERFCTR_RAS_SEL_2, RBBM_PERFCTR_RAS_2_LO, RBBM_PERFCTR_RAS_2_HI), 135*61046927SAndroid Build Coastguard Worker COUNTER(GRAS_PERFCTR_RAS_SEL_3, RBBM_PERFCTR_RAS_3_LO, RBBM_PERFCTR_RAS_3_HI), 136*61046927SAndroid Build Coastguard Worker }; 137*61046927SAndroid Build Coastguard Worker 138*61046927SAndroid Build Coastguard Worker static const struct fd_perfcntr_countable ras_countables[] = { 139*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RAS_BUSY_CYCLES, UINT64, AVERAGE), 140*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RAS_SUPERTILE_ACTIVE_CYCLES, UINT64, AVERAGE), 141*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RAS_STALL_CYCLES_LRZ, UINT64, AVERAGE), 142*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RAS_STARVE_CYCLES_TSE, UINT64, AVERAGE), 143*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RAS_SUPER_TILES, UINT64, AVERAGE), 144*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RAS_8X4_TILES, UINT64, AVERAGE), 145*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RAS_MASKGEN_ACTIVE, UINT64, AVERAGE), 146*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RAS_FULLY_COVERED_SUPER_TILES, UINT64, AVERAGE), 147*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RAS_FULLY_COVERED_8X4_TILES, UINT64, AVERAGE), 148*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RAS_PRIM_KILLED_INVISILBE, UINT64, AVERAGE), 149*61046927SAndroid Build Coastguard Worker }; 150*61046927SAndroid Build Coastguard Worker 151*61046927SAndroid Build Coastguard Worker static const struct fd_perfcntr_counter lrz_counters[] = { 152*61046927SAndroid Build Coastguard Worker COUNTER(GRAS_PERFCTR_LRZ_SEL_0, RBBM_PERFCTR_LRZ_0_LO, RBBM_PERFCTR_LRZ_0_HI), 153*61046927SAndroid Build Coastguard Worker COUNTER(GRAS_PERFCTR_LRZ_SEL_1, RBBM_PERFCTR_LRZ_1_LO, RBBM_PERFCTR_LRZ_1_HI), 154*61046927SAndroid Build Coastguard Worker COUNTER(GRAS_PERFCTR_LRZ_SEL_2, RBBM_PERFCTR_LRZ_2_LO, RBBM_PERFCTR_LRZ_2_HI), 155*61046927SAndroid Build Coastguard Worker COUNTER(GRAS_PERFCTR_LRZ_SEL_3, RBBM_PERFCTR_LRZ_3_LO, RBBM_PERFCTR_LRZ_3_HI), 156*61046927SAndroid Build Coastguard Worker }; 157*61046927SAndroid Build Coastguard Worker 158*61046927SAndroid Build Coastguard Worker static const struct fd_perfcntr_countable lrz_countables[] = { 159*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_LRZ_BUSY_CYCLES, UINT64, AVERAGE), 160*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_LRZ_STARVE_CYCLES_RAS, UINT64, AVERAGE), 161*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_LRZ_STALL_CYCLES_RB, UINT64, AVERAGE), 162*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_LRZ_STALL_CYCLES_VSC, UINT64, AVERAGE), 163*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_LRZ_STALL_CYCLES_VPC, UINT64, AVERAGE), 164*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_LRZ_STALL_CYCLES_FLAG_PREFETCH, UINT64, AVERAGE), 165*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_LRZ_STALL_CYCLES_UCHE, UINT64, AVERAGE), 166*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_LRZ_LRZ_READ, UINT64, AVERAGE), 167*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_LRZ_LRZ_WRITE, UINT64, AVERAGE), 168*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_LRZ_READ_LATENCY, UINT64, AVERAGE), 169*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_LRZ_MERGE_CACHE_UPDATING, UINT64, AVERAGE), 170*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_LRZ_PRIM_KILLED_BY_MASKGEN, UINT64, AVERAGE), 171*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_LRZ_PRIM_KILLED_BY_LRZ, UINT64, AVERAGE), 172*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_LRZ_VISIBLE_PRIM_AFTER_LRZ, UINT64, AVERAGE), 173*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_LRZ_FULL_8X8_TILES, UINT64, AVERAGE), 174*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_LRZ_PARTIAL_8X8_TILES, UINT64, AVERAGE), 175*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_LRZ_TILE_KILLED, UINT64, AVERAGE), 176*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_LRZ_TOTAL_PIXEL, UINT64, AVERAGE), 177*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_LRZ_VISIBLE_PIXEL_AFTER_LRZ, UINT64, AVERAGE), 178*61046927SAndroid Build Coastguard Worker }; 179*61046927SAndroid Build Coastguard Worker 180*61046927SAndroid Build Coastguard Worker static const struct fd_perfcntr_counter hlsq_counters[] = { 181*61046927SAndroid Build Coastguard Worker COUNTER(HLSQ_PERFCTR_HLSQ_SEL_0, RBBM_PERFCTR_HLSQ_0_LO, RBBM_PERFCTR_HLSQ_0_HI), 182*61046927SAndroid Build Coastguard Worker COUNTER(HLSQ_PERFCTR_HLSQ_SEL_1, RBBM_PERFCTR_HLSQ_1_LO, RBBM_PERFCTR_HLSQ_1_HI), 183*61046927SAndroid Build Coastguard Worker COUNTER(HLSQ_PERFCTR_HLSQ_SEL_2, RBBM_PERFCTR_HLSQ_2_LO, RBBM_PERFCTR_HLSQ_2_HI), 184*61046927SAndroid Build Coastguard Worker COUNTER(HLSQ_PERFCTR_HLSQ_SEL_3, RBBM_PERFCTR_HLSQ_3_LO, RBBM_PERFCTR_HLSQ_3_HI), 185*61046927SAndroid Build Coastguard Worker COUNTER(HLSQ_PERFCTR_HLSQ_SEL_4, RBBM_PERFCTR_HLSQ_4_LO, RBBM_PERFCTR_HLSQ_4_HI), 186*61046927SAndroid Build Coastguard Worker COUNTER(HLSQ_PERFCTR_HLSQ_SEL_5, RBBM_PERFCTR_HLSQ_5_LO, RBBM_PERFCTR_HLSQ_5_HI), 187*61046927SAndroid Build Coastguard Worker COUNTER(HLSQ_PERFCTR_HLSQ_SEL_6, RBBM_PERFCTR_HLSQ_6_LO, RBBM_PERFCTR_HLSQ_6_HI), 188*61046927SAndroid Build Coastguard Worker COUNTER(HLSQ_PERFCTR_HLSQ_SEL_7, RBBM_PERFCTR_HLSQ_7_LO, RBBM_PERFCTR_HLSQ_7_HI), 189*61046927SAndroid Build Coastguard Worker }; 190*61046927SAndroid Build Coastguard Worker 191*61046927SAndroid Build Coastguard Worker static const struct fd_perfcntr_countable hlsq_countables[] = { 192*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_HLSQ_BUSY_CYCLES, UINT64, AVERAGE), 193*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_HLSQ_STALL_CYCLES_UCHE, UINT64, AVERAGE), 194*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_HLSQ_STALL_CYCLES_SP_STATE, UINT64, AVERAGE), 195*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_HLSQ_STALL_CYCLES_SP_FS_STAGE, UINT64, AVERAGE), 196*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_HLSQ_UCHE_LATENCY_CYCLES, UINT64, AVERAGE), 197*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_HLSQ_UCHE_LATENCY_COUNT, UINT64, AVERAGE), 198*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_HLSQ_FS_STAGE_32_WAVES, UINT64, AVERAGE), 199*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_HLSQ_FS_STAGE_64_WAVES, UINT64, AVERAGE), 200*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_HLSQ_QUADS, UINT64, AVERAGE), 201*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_HLSQ_SP_STATE_COPY_TRANS_FS_STAGE, UINT64, AVERAGE), 202*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_HLSQ_SP_STATE_COPY_TRANS_VS_STAGE, UINT64, AVERAGE), 203*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_HLSQ_TP_STATE_COPY_TRANS_FS_STAGE, UINT64, AVERAGE), 204*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_HLSQ_TP_STATE_COPY_TRANS_VS_STAGE, UINT64, AVERAGE), 205*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_HLSQ_CS_INVOCATIONS, UINT64, AVERAGE), 206*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_HLSQ_COMPUTE_DRAWCALLS, UINT64, AVERAGE), 207*61046927SAndroid Build Coastguard Worker }; 208*61046927SAndroid Build Coastguard Worker 209*61046927SAndroid Build Coastguard Worker static const struct fd_perfcntr_counter pc_counters[] = { 210*61046927SAndroid Build Coastguard Worker COUNTER(PC_PERFCTR_PC_SEL_0, RBBM_PERFCTR_PC_0_LO, RBBM_PERFCTR_PC_0_HI), 211*61046927SAndroid Build Coastguard Worker COUNTER(PC_PERFCTR_PC_SEL_1, RBBM_PERFCTR_PC_1_LO, RBBM_PERFCTR_PC_1_HI), 212*61046927SAndroid Build Coastguard Worker COUNTER(PC_PERFCTR_PC_SEL_2, RBBM_PERFCTR_PC_2_LO, RBBM_PERFCTR_PC_2_HI), 213*61046927SAndroid Build Coastguard Worker COUNTER(PC_PERFCTR_PC_SEL_3, RBBM_PERFCTR_PC_3_LO, RBBM_PERFCTR_PC_3_HI), 214*61046927SAndroid Build Coastguard Worker COUNTER(PC_PERFCTR_PC_SEL_4, RBBM_PERFCTR_PC_4_LO, RBBM_PERFCTR_PC_4_HI), 215*61046927SAndroid Build Coastguard Worker COUNTER(PC_PERFCTR_PC_SEL_5, RBBM_PERFCTR_PC_5_LO, RBBM_PERFCTR_PC_5_HI), 216*61046927SAndroid Build Coastguard Worker COUNTER(PC_PERFCTR_PC_SEL_6, RBBM_PERFCTR_PC_6_LO, RBBM_PERFCTR_PC_6_HI), 217*61046927SAndroid Build Coastguard Worker COUNTER(PC_PERFCTR_PC_SEL_7, RBBM_PERFCTR_PC_7_LO, RBBM_PERFCTR_PC_7_HI), 218*61046927SAndroid Build Coastguard Worker }; 219*61046927SAndroid Build Coastguard Worker 220*61046927SAndroid Build Coastguard Worker static const struct fd_perfcntr_countable pc_countables[] = { 221*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_PC_BUSY_CYCLES, UINT64, AVERAGE), 222*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_PC_WORKING_CYCLES, UINT64, AVERAGE), 223*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_PC_STALL_CYCLES_VFD, UINT64, AVERAGE), 224*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_PC_STALL_CYCLES_TSE, UINT64, AVERAGE), 225*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_PC_STALL_CYCLES_VPC, UINT64, AVERAGE), 226*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_PC_STALL_CYCLES_UCHE, UINT64, AVERAGE), 227*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_PC_STALL_CYCLES_TESS, UINT64, AVERAGE), 228*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_PC_STALL_CYCLES_TSE_ONLY, UINT64, AVERAGE), 229*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_PC_STALL_CYCLES_VPC_ONLY, UINT64, AVERAGE), 230*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_PC_PASS1_TF_STALL_CYCLES, UINT64, AVERAGE), 231*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_PC_STARVE_CYCLES_FOR_INDEX, UINT64, AVERAGE), 232*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_PC_STARVE_CYCLES_FOR_TESS_FACTOR, UINT64, AVERAGE), 233*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_PC_STARVE_CYCLES_FOR_VIZ_STREAM, UINT64, AVERAGE), 234*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_PC_STARVE_CYCLES_FOR_POSITION, UINT64, AVERAGE), 235*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_PC_STARVE_CYCLES_DI, UINT64, AVERAGE), 236*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_PC_VIS_STREAMS_LOADED, UINT64, AVERAGE), 237*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_PC_INSTANCES, UINT64, AVERAGE), 238*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_PC_VPC_PRIMITIVES, UINT64, AVERAGE), 239*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_PC_DEAD_PRIM, UINT64, AVERAGE), 240*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_PC_LIVE_PRIM, UINT64, AVERAGE), 241*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_PC_VERTEX_HITS, UINT64, AVERAGE), 242*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_PC_IA_VERTICES, UINT64, AVERAGE), 243*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_PC_IA_PRIMITIVES, UINT64, AVERAGE), 244*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_PC_GS_PRIMITIVES, UINT64, AVERAGE), 245*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_PC_HS_INVOCATIONS, UINT64, AVERAGE), 246*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_PC_DS_INVOCATIONS, UINT64, AVERAGE), 247*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_PC_VS_INVOCATIONS, UINT64, AVERAGE), 248*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_PC_GS_INVOCATIONS, UINT64, AVERAGE), 249*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_PC_DS_PRIMITIVES, UINT64, AVERAGE), 250*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_PC_VPC_POS_DATA_TRANSACTION, UINT64, AVERAGE), 251*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_PC_3D_DRAWCALLS, UINT64, AVERAGE), 252*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_PC_2D_DRAWCALLS, UINT64, AVERAGE), 253*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_PC_NON_DRAWCALL_GLOBAL_EVENTS, UINT64, AVERAGE), 254*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TESS_BUSY_CYCLES, UINT64, AVERAGE), 255*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TESS_WORKING_CYCLES, UINT64, AVERAGE), 256*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TESS_STALL_CYCLES_PC, UINT64, AVERAGE), 257*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TESS_STARVE_CYCLES_PC, UINT64, AVERAGE), 258*61046927SAndroid Build Coastguard Worker }; 259*61046927SAndroid Build Coastguard Worker 260*61046927SAndroid Build Coastguard Worker static const struct fd_perfcntr_counter rb_counters[] = { 261*61046927SAndroid Build Coastguard Worker COUNTER(RB_PERFCTR_RB_SEL_0, RBBM_PERFCTR_RB_0_LO, RBBM_PERFCTR_RB_0_HI), 262*61046927SAndroid Build Coastguard Worker COUNTER(RB_PERFCTR_RB_SEL_1, RBBM_PERFCTR_RB_1_LO, RBBM_PERFCTR_RB_1_HI), 263*61046927SAndroid Build Coastguard Worker COUNTER(RB_PERFCTR_RB_SEL_2, RBBM_PERFCTR_RB_2_LO, RBBM_PERFCTR_RB_2_HI), 264*61046927SAndroid Build Coastguard Worker COUNTER(RB_PERFCTR_RB_SEL_3, RBBM_PERFCTR_RB_3_LO, RBBM_PERFCTR_RB_3_HI), 265*61046927SAndroid Build Coastguard Worker COUNTER(RB_PERFCTR_RB_SEL_4, RBBM_PERFCTR_RB_4_LO, RBBM_PERFCTR_RB_4_HI), 266*61046927SAndroid Build Coastguard Worker COUNTER(RB_PERFCTR_RB_SEL_5, RBBM_PERFCTR_RB_5_LO, RBBM_PERFCTR_RB_5_HI), 267*61046927SAndroid Build Coastguard Worker COUNTER(RB_PERFCTR_RB_SEL_6, RBBM_PERFCTR_RB_6_LO, RBBM_PERFCTR_RB_6_HI), 268*61046927SAndroid Build Coastguard Worker COUNTER(RB_PERFCTR_RB_SEL_7, RBBM_PERFCTR_RB_7_LO, RBBM_PERFCTR_RB_7_HI), 269*61046927SAndroid Build Coastguard Worker }; 270*61046927SAndroid Build Coastguard Worker 271*61046927SAndroid Build Coastguard Worker static const struct fd_perfcntr_countable rb_countables[] = { 272*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RB_BUSY_CYCLES, UINT64, AVERAGE), 273*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RB_STALL_CYCLES_CCU, UINT64, AVERAGE), 274*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RB_STALL_CYCLES_HLSQ, UINT64, AVERAGE), 275*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RB_STALL_CYCLES_FIFO0_FULL, UINT64, AVERAGE), 276*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RB_STALL_CYCLES_FIFO1_FULL, UINT64, AVERAGE), 277*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RB_STALL_CYCLES_FIFO2_FULL, UINT64, AVERAGE), 278*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RB_STARVE_CYCLES_SP, UINT64, AVERAGE), 279*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RB_STARVE_CYCLES_LRZ_TILE, UINT64, AVERAGE), 280*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RB_STARVE_CYCLES_CCU, UINT64, AVERAGE), 281*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RB_STARVE_CYCLES_Z_PLANE, UINT64, AVERAGE), 282*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RB_STARVE_CYCLES_BARY_PLANE, UINT64, AVERAGE), 283*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RB_Z_WORKLOAD, UINT64, AVERAGE), 284*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RB_HLSQ_ACTIVE, UINT64, AVERAGE), 285*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RB_Z_READ, UINT64, AVERAGE), 286*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RB_Z_WRITE, UINT64, AVERAGE), 287*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RB_C_READ, UINT64, AVERAGE), 288*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RB_C_WRITE, UINT64, AVERAGE), 289*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RB_TOTAL_PASS, UINT64, AVERAGE), 290*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RB_Z_PASS, UINT64, AVERAGE), 291*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RB_Z_FAIL, UINT64, AVERAGE), 292*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RB_S_FAIL, UINT64, AVERAGE), 293*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RB_BLENDED_FXP_COMPONENTS, UINT64, AVERAGE), 294*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RB_BLENDED_FP16_COMPONENTS, UINT64, AVERAGE), 295*61046927SAndroid Build Coastguard Worker COUNTABLE(RB_RESERVED, UINT64, AVERAGE), 296*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RB_2D_ALIVE_CYCLES, UINT64, AVERAGE), 297*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RB_2D_STALL_CYCLES_A2D, UINT64, AVERAGE), 298*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RB_2D_STARVE_CYCLES_SRC, UINT64, AVERAGE), 299*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RB_2D_STARVE_CYCLES_SP, UINT64, AVERAGE), 300*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RB_2D_STARVE_CYCLES_DST, UINT64, AVERAGE), 301*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RB_2D_VALID_PIXELS, UINT64, AVERAGE), 302*61046927SAndroid Build Coastguard Worker }; 303*61046927SAndroid Build Coastguard Worker 304*61046927SAndroid Build Coastguard Worker static const struct fd_perfcntr_counter rbbm_counters[] = { 305*61046927SAndroid Build Coastguard Worker //RESERVED: for kernel 306*61046927SAndroid Build Coastguard Worker // COUNTER(RBBM_PERFCTR_RBBM_SEL_0, RBBM_PERFCTR_RBBM_0_LO, RBBM_PERFCTR_RBBM_0_HI), 307*61046927SAndroid Build Coastguard Worker COUNTER(RBBM_PERFCTR_RBBM_SEL_1, RBBM_PERFCTR_RBBM_1_LO, RBBM_PERFCTR_RBBM_1_HI), 308*61046927SAndroid Build Coastguard Worker COUNTER(RBBM_PERFCTR_RBBM_SEL_2, RBBM_PERFCTR_RBBM_2_LO, RBBM_PERFCTR_RBBM_2_HI), 309*61046927SAndroid Build Coastguard Worker COUNTER(RBBM_PERFCTR_RBBM_SEL_3, RBBM_PERFCTR_RBBM_3_LO, RBBM_PERFCTR_RBBM_3_HI), 310*61046927SAndroid Build Coastguard Worker }; 311*61046927SAndroid Build Coastguard Worker 312*61046927SAndroid Build Coastguard Worker static const struct fd_perfcntr_countable rbbm_countables[] = { 313*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RBBM_ALWAYS_COUNT, UINT64, AVERAGE), 314*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RBBM_ALWAYS_ON, UINT64, AVERAGE), 315*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RBBM_TSE_BUSY, UINT64, AVERAGE), 316*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RBBM_RAS_BUSY, UINT64, AVERAGE), 317*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RBBM_PC_DCALL_BUSY, UINT64, AVERAGE), 318*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RBBM_PC_VSD_BUSY, UINT64, AVERAGE), 319*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RBBM_STATUS_MASKED, UINT64, AVERAGE), 320*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RBBM_COM_BUSY, UINT64, AVERAGE), 321*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RBBM_DCOM_BUSY, UINT64, AVERAGE), 322*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RBBM_VBIF_BUSY, UINT64, AVERAGE), 323*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RBBM_VSC_BUSY, UINT64, AVERAGE), 324*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RBBM_TESS_BUSY, UINT64, AVERAGE), 325*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RBBM_UCHE_BUSY, UINT64, AVERAGE), 326*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_RBBM_HLSQ_BUSY, UINT64, AVERAGE), 327*61046927SAndroid Build Coastguard Worker }; 328*61046927SAndroid Build Coastguard Worker 329*61046927SAndroid Build Coastguard Worker static const struct fd_perfcntr_counter sp_counters[] = { 330*61046927SAndroid Build Coastguard Worker //RESERVED: for kernel 331*61046927SAndroid Build Coastguard Worker // COUNTER(SP_PERFCTR_SP_SEL_0, RBBM_PERFCTR_SP_0_LO, RBBM_PERFCTR_SP_0_HI), 332*61046927SAndroid Build Coastguard Worker COUNTER(SP_PERFCTR_SP_SEL_1, RBBM_PERFCTR_SP_1_LO, RBBM_PERFCTR_SP_1_HI), 333*61046927SAndroid Build Coastguard Worker COUNTER(SP_PERFCTR_SP_SEL_2, RBBM_PERFCTR_SP_2_LO, RBBM_PERFCTR_SP_2_HI), 334*61046927SAndroid Build Coastguard Worker COUNTER(SP_PERFCTR_SP_SEL_3, RBBM_PERFCTR_SP_3_LO, RBBM_PERFCTR_SP_3_HI), 335*61046927SAndroid Build Coastguard Worker COUNTER(SP_PERFCTR_SP_SEL_4, RBBM_PERFCTR_SP_4_LO, RBBM_PERFCTR_SP_4_HI), 336*61046927SAndroid Build Coastguard Worker COUNTER(SP_PERFCTR_SP_SEL_5, RBBM_PERFCTR_SP_5_LO, RBBM_PERFCTR_SP_5_HI), 337*61046927SAndroid Build Coastguard Worker COUNTER(SP_PERFCTR_SP_SEL_6, RBBM_PERFCTR_SP_6_LO, RBBM_PERFCTR_SP_6_HI), 338*61046927SAndroid Build Coastguard Worker COUNTER(SP_PERFCTR_SP_SEL_7, RBBM_PERFCTR_SP_7_LO, RBBM_PERFCTR_SP_7_HI), 339*61046927SAndroid Build Coastguard Worker COUNTER(SP_PERFCTR_SP_SEL_8, RBBM_PERFCTR_SP_8_LO, RBBM_PERFCTR_SP_8_HI), 340*61046927SAndroid Build Coastguard Worker COUNTER(SP_PERFCTR_SP_SEL_9, RBBM_PERFCTR_SP_9_LO, RBBM_PERFCTR_SP_9_HI), 341*61046927SAndroid Build Coastguard Worker COUNTER(SP_PERFCTR_SP_SEL_10, RBBM_PERFCTR_SP_10_LO, RBBM_PERFCTR_SP_10_HI), 342*61046927SAndroid Build Coastguard Worker COUNTER(SP_PERFCTR_SP_SEL_11, RBBM_PERFCTR_SP_11_LO, RBBM_PERFCTR_SP_11_HI), 343*61046927SAndroid Build Coastguard Worker }; 344*61046927SAndroid Build Coastguard Worker 345*61046927SAndroid Build Coastguard Worker static const struct fd_perfcntr_countable sp_countables[] = { 346*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_BUSY_CYCLES, UINT64, AVERAGE), 347*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_ALU_WORKING_CYCLES, UINT64, AVERAGE), 348*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_EFU_WORKING_CYCLES, UINT64, AVERAGE), 349*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_STALL_CYCLES_VPC, UINT64, AVERAGE), 350*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_STALL_CYCLES_TP, UINT64, AVERAGE), 351*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_STALL_CYCLES_UCHE, UINT64, AVERAGE), 352*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_STALL_CYCLES_RB, UINT64, AVERAGE), 353*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_SCHEDULER_NON_WORKING, UINT64, AVERAGE), 354*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_WAVE_CONTEXTS, UINT64, AVERAGE), 355*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_WAVE_CONTEXT_CYCLES, UINT64, AVERAGE), 356*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_FS_STAGE_WAVE_CYCLES, UINT64, AVERAGE), 357*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_FS_STAGE_WAVE_SAMPLES, UINT64, AVERAGE), 358*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_VS_STAGE_WAVE_CYCLES, UINT64, AVERAGE), 359*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_VS_STAGE_WAVE_SAMPLES, UINT64, AVERAGE), 360*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_FS_STAGE_DURATION_CYCLES, UINT64, AVERAGE), 361*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_VS_STAGE_DURATION_CYCLES, UINT64, AVERAGE), 362*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_WAVE_CTRL_CYCLES, UINT64, AVERAGE), 363*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_WAVE_LOAD_CYCLES, UINT64, AVERAGE), 364*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_WAVE_EMIT_CYCLES, UINT64, AVERAGE), 365*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_WAVE_NOP_CYCLES, UINT64, AVERAGE), 366*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_WAVE_WAIT_CYCLES, UINT64, AVERAGE), 367*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_WAVE_FETCH_CYCLES, UINT64, AVERAGE), 368*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_WAVE_IDLE_CYCLES, UINT64, AVERAGE), 369*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_WAVE_END_CYCLES, UINT64, AVERAGE), 370*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_WAVE_LONG_SYNC_CYCLES, UINT64, AVERAGE), 371*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_WAVE_SHORT_SYNC_CYCLES, UINT64, AVERAGE), 372*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_WAVE_JOIN_CYCLES, UINT64, AVERAGE), 373*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_LM_LOAD_INSTRUCTIONS, UINT64, AVERAGE), 374*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_LM_STORE_INSTRUCTIONS, UINT64, AVERAGE), 375*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_LM_ATOMICS, UINT64, AVERAGE), 376*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_GM_LOAD_INSTRUCTIONS, UINT64, AVERAGE), 377*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_GM_STORE_INSTRUCTIONS, UINT64, AVERAGE), 378*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_GM_ATOMICS, UINT64, AVERAGE), 379*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_VS_STAGE_TEX_INSTRUCTIONS, UINT64, AVERAGE), 380*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_VS_STAGE_CFLOW_INSTRUCTIONS, UINT64, AVERAGE), 381*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_VS_STAGE_EFU_INSTRUCTIONS, UINT64, AVERAGE), 382*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_VS_STAGE_FULL_ALU_INSTRUCTIONS, UINT64, AVERAGE), 383*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_VS_STAGE_HALF_ALU_INSTRUCTIONS, UINT64, AVERAGE), 384*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_FS_STAGE_TEX_INSTRUCTIONS, UINT64, AVERAGE), 385*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_FS_STAGE_CFLOW_INSTRUCTIONS, UINT64, AVERAGE), 386*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_FS_STAGE_EFU_INSTRUCTIONS, UINT64, AVERAGE), 387*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_FS_STAGE_FULL_ALU_INSTRUCTIONS, UINT64, AVERAGE), 388*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_FS_STAGE_HALF_ALU_INSTRUCTIONS, UINT64, AVERAGE), 389*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_FS_STAGE_BARY_INSTRUCTIONS, UINT64, AVERAGE), 390*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_VS_INSTRUCTIONS, UINT64, AVERAGE), 391*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_FS_INSTRUCTIONS, UINT64, AVERAGE), 392*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_ADDR_LOCK_COUNT, UINT64, AVERAGE), 393*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_UCHE_READ_TRANS, UINT64, AVERAGE), 394*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_UCHE_WRITE_TRANS, UINT64, AVERAGE), 395*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_EXPORT_VPC_TRANS, UINT64, AVERAGE), 396*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_EXPORT_RB_TRANS, UINT64, AVERAGE), 397*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_PIXELS_KILLED, UINT64, AVERAGE), 398*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_ICL1_REQUESTS, UINT64, AVERAGE), 399*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_ICL1_MISSES, UINT64, AVERAGE), 400*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_ICL0_REQUESTS, UINT64, AVERAGE), 401*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_ICL0_MISSES, UINT64, AVERAGE), 402*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_HS_INSTRUCTIONS, UINT64, AVERAGE), 403*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_DS_INSTRUCTIONS, UINT64, AVERAGE), 404*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_GS_INSTRUCTIONS, UINT64, AVERAGE), 405*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_CS_INSTRUCTIONS, UINT64, AVERAGE), 406*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_GPR_READ, UINT64, AVERAGE), 407*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_GPR_WRITE, UINT64, AVERAGE), 408*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_LM_CH0_REQUESTS, UINT64, AVERAGE), 409*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_LM_CH1_REQUESTS, UINT64, AVERAGE), 410*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_SP_LM_BANK_CONFLICTS, UINT64, AVERAGE), 411*61046927SAndroid Build Coastguard Worker }; 412*61046927SAndroid Build Coastguard Worker 413*61046927SAndroid Build Coastguard Worker static const struct fd_perfcntr_counter tp_counters[] = { 414*61046927SAndroid Build Coastguard Worker COUNTER(TPL1_PERFCTR_TP_SEL_0, RBBM_PERFCTR_TP_0_LO, RBBM_PERFCTR_TP_0_HI), 415*61046927SAndroid Build Coastguard Worker COUNTER(TPL1_PERFCTR_TP_SEL_1, RBBM_PERFCTR_TP_1_LO, RBBM_PERFCTR_TP_1_HI), 416*61046927SAndroid Build Coastguard Worker COUNTER(TPL1_PERFCTR_TP_SEL_2, RBBM_PERFCTR_TP_2_LO, RBBM_PERFCTR_TP_2_HI), 417*61046927SAndroid Build Coastguard Worker COUNTER(TPL1_PERFCTR_TP_SEL_3, RBBM_PERFCTR_TP_3_LO, RBBM_PERFCTR_TP_3_HI), 418*61046927SAndroid Build Coastguard Worker COUNTER(TPL1_PERFCTR_TP_SEL_4, RBBM_PERFCTR_TP_4_LO, RBBM_PERFCTR_TP_4_HI), 419*61046927SAndroid Build Coastguard Worker COUNTER(TPL1_PERFCTR_TP_SEL_5, RBBM_PERFCTR_TP_5_LO, RBBM_PERFCTR_TP_5_HI), 420*61046927SAndroid Build Coastguard Worker COUNTER(TPL1_PERFCTR_TP_SEL_6, RBBM_PERFCTR_TP_6_LO, RBBM_PERFCTR_TP_6_HI), 421*61046927SAndroid Build Coastguard Worker COUNTER(TPL1_PERFCTR_TP_SEL_7, RBBM_PERFCTR_TP_7_LO, RBBM_PERFCTR_TP_7_HI), 422*61046927SAndroid Build Coastguard Worker }; 423*61046927SAndroid Build Coastguard Worker 424*61046927SAndroid Build Coastguard Worker static const struct fd_perfcntr_countable tp_countables[] = { 425*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TP_BUSY_CYCLES, UINT64, AVERAGE), 426*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TP_STALL_CYCLES_UCHE, UINT64, AVERAGE), 427*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TP_LATENCY_CYCLES, UINT64, AVERAGE), 428*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TP_LATENCY_TRANS, UINT64, AVERAGE), 429*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TP_FLAG_CACHE_REQUEST_SAMPLES, UINT64, AVERAGE), 430*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TP_FLAG_CACHE_REQUEST_LATENCY, UINT64, AVERAGE), 431*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TP_L1_CACHELINE_REQUESTS, UINT64, AVERAGE), 432*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TP_L1_CACHELINE_MISSES, UINT64, AVERAGE), 433*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TP_SP_TP_TRANS, UINT64, AVERAGE), 434*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TP_TP_SP_TRANS, UINT64, AVERAGE), 435*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TP_OUTPUT_PIXELS, UINT64, AVERAGE), 436*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TP_FILTER_WORKLOAD_16BIT, UINT64, AVERAGE), 437*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TP_FILTER_WORKLOAD_32BIT, UINT64, AVERAGE), 438*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TP_QUADS_RECEIVED, UINT64, AVERAGE), 439*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TP_QUADS_OFFSET, UINT64, AVERAGE), 440*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TP_QUADS_SHADOW, UINT64, AVERAGE), 441*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TP_QUADS_ARRAY, UINT64, AVERAGE), 442*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TP_QUADS_GRADIENT, UINT64, AVERAGE), 443*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TP_QUADS_1D, UINT64, AVERAGE), 444*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TP_QUADS_2D, UINT64, AVERAGE), 445*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TP_QUADS_BUFFER, UINT64, AVERAGE), 446*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TP_QUADS_3D, UINT64, AVERAGE), 447*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TP_QUADS_CUBE, UINT64, AVERAGE), 448*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TP_STATE_CACHE_REQUESTS, UINT64, AVERAGE), 449*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TP_STATE_CACHE_MISSES, UINT64, AVERAGE), 450*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TP_DIVERGENT_QUADS_RECEIVED, UINT64, AVERAGE), 451*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TP_BINDLESS_STATE_CACHE_REQUESTS, UINT64, AVERAGE), 452*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TP_BINDLESS_STATE_CACHE_MISSES, UINT64, AVERAGE), 453*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TP_PRT_NON_RESIDENT_EVENTS, UINT64, AVERAGE), 454*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TP_OUTPUT_PIXELS_POINT, UINT64, AVERAGE), 455*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TP_OUTPUT_PIXELS_BILINEAR, UINT64, AVERAGE), 456*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TP_OUTPUT_PIXELS_MIP, UINT64, AVERAGE), 457*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TP_OUTPUT_PIXELS_ANISO, UINT64, AVERAGE), 458*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TP_OUTPUT_PIXELS_ZERO_LOD, UINT64, AVERAGE), 459*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TP_FLAG_CACHE_REQUESTS, UINT64, AVERAGE), 460*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TP_FLAG_CACHE_MISSES, UINT64, AVERAGE), 461*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TP_L1_5_L2_REQUESTS, UINT64, AVERAGE), 462*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TP_2D_OUTPUT_PIXELS, UINT64, AVERAGE), 463*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TP_2D_OUTPUT_PIXELS_POINT, UINT64, AVERAGE), 464*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TP_2D_OUTPUT_PIXELS_BILINEAR, UINT64, AVERAGE), 465*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TP_2D_FILTER_WORKLOAD_16BIT, UINT64, AVERAGE), 466*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_TP_2D_FILTER_WORKLOAD_32BIT, UINT64, AVERAGE), 467*61046927SAndroid Build Coastguard Worker }; 468*61046927SAndroid Build Coastguard Worker 469*61046927SAndroid Build Coastguard Worker static const struct fd_perfcntr_counter uche_counters[] = { 470*61046927SAndroid Build Coastguard Worker COUNTER(UCHE_PERFCTR_UCHE_SEL_0, RBBM_PERFCTR_UCHE_0_LO, RBBM_PERFCTR_UCHE_0_HI), 471*61046927SAndroid Build Coastguard Worker COUNTER(UCHE_PERFCTR_UCHE_SEL_1, RBBM_PERFCTR_UCHE_1_LO, RBBM_PERFCTR_UCHE_1_HI), 472*61046927SAndroid Build Coastguard Worker COUNTER(UCHE_PERFCTR_UCHE_SEL_2, RBBM_PERFCTR_UCHE_2_LO, RBBM_PERFCTR_UCHE_2_HI), 473*61046927SAndroid Build Coastguard Worker COUNTER(UCHE_PERFCTR_UCHE_SEL_3, RBBM_PERFCTR_UCHE_3_LO, RBBM_PERFCTR_UCHE_3_HI), 474*61046927SAndroid Build Coastguard Worker COUNTER(UCHE_PERFCTR_UCHE_SEL_4, RBBM_PERFCTR_UCHE_4_LO, RBBM_PERFCTR_UCHE_4_HI), 475*61046927SAndroid Build Coastguard Worker COUNTER(UCHE_PERFCTR_UCHE_SEL_5, RBBM_PERFCTR_UCHE_5_LO, RBBM_PERFCTR_UCHE_5_HI), 476*61046927SAndroid Build Coastguard Worker COUNTER(UCHE_PERFCTR_UCHE_SEL_6, RBBM_PERFCTR_UCHE_6_LO, RBBM_PERFCTR_UCHE_6_HI), 477*61046927SAndroid Build Coastguard Worker COUNTER(UCHE_PERFCTR_UCHE_SEL_7, RBBM_PERFCTR_UCHE_7_LO, RBBM_PERFCTR_UCHE_7_HI), 478*61046927SAndroid Build Coastguard Worker }; 479*61046927SAndroid Build Coastguard Worker 480*61046927SAndroid Build Coastguard Worker static const struct fd_perfcntr_countable uche_countables[] = { 481*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_UCHE_BUSY_CYCLES, UINT64, AVERAGE), 482*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_UCHE_STALL_CYCLES_VBIF, UINT64, AVERAGE), 483*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_UCHE_VBIF_LATENCY_CYCLES, UINT64, AVERAGE), 484*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_UCHE_VBIF_LATENCY_SAMPLES, UINT64, AVERAGE), 485*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_UCHE_VBIF_READ_BEATS_TP, UINT64, AVERAGE), 486*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_UCHE_VBIF_READ_BEATS_VFD, UINT64, AVERAGE), 487*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_UCHE_VBIF_READ_BEATS_HLSQ, UINT64, AVERAGE), 488*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_UCHE_VBIF_READ_BEATS_LRZ, UINT64, AVERAGE), 489*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_UCHE_VBIF_READ_BEATS_SP, UINT64, AVERAGE), 490*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_UCHE_READ_REQUESTS_TP, UINT64, AVERAGE), 491*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_UCHE_READ_REQUESTS_VFD, UINT64, AVERAGE), 492*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_UCHE_READ_REQUESTS_HLSQ, UINT64, AVERAGE), 493*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_UCHE_READ_REQUESTS_LRZ, UINT64, AVERAGE), 494*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_UCHE_READ_REQUESTS_SP, UINT64, AVERAGE), 495*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_UCHE_WRITE_REQUESTS_LRZ, UINT64, AVERAGE), 496*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_UCHE_WRITE_REQUESTS_SP, UINT64, AVERAGE), 497*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_UCHE_WRITE_REQUESTS_VPC, UINT64, AVERAGE), 498*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_UCHE_WRITE_REQUESTS_VSC, UINT64, AVERAGE), 499*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_UCHE_EVICTS, UINT64, AVERAGE), 500*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_UCHE_BANK_REQ0, UINT64, AVERAGE), 501*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_UCHE_BANK_REQ1, UINT64, AVERAGE), 502*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_UCHE_BANK_REQ2, UINT64, AVERAGE), 503*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_UCHE_BANK_REQ3, UINT64, AVERAGE), 504*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_UCHE_BANK_REQ4, UINT64, AVERAGE), 505*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_UCHE_BANK_REQ5, UINT64, AVERAGE), 506*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_UCHE_BANK_REQ6, UINT64, AVERAGE), 507*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_UCHE_BANK_REQ7, UINT64, AVERAGE), 508*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_UCHE_VBIF_READ_BEATS_CH0, UINT64, AVERAGE), 509*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_UCHE_VBIF_READ_BEATS_CH1, UINT64, AVERAGE), 510*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_UCHE_GMEM_READ_BEATS, UINT64, AVERAGE), 511*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_UCHE_FLAG_COUNT, UINT64, AVERAGE), 512*61046927SAndroid Build Coastguard Worker }; 513*61046927SAndroid Build Coastguard Worker 514*61046927SAndroid Build Coastguard Worker static const struct fd_perfcntr_counter vfd_counters[] = { 515*61046927SAndroid Build Coastguard Worker COUNTER(VFD_PERFCTR_VFD_SEL_0, RBBM_PERFCTR_VFD_0_LO, RBBM_PERFCTR_VFD_0_HI), 516*61046927SAndroid Build Coastguard Worker COUNTER(VFD_PERFCTR_VFD_SEL_1, RBBM_PERFCTR_VFD_1_LO, RBBM_PERFCTR_VFD_1_HI), 517*61046927SAndroid Build Coastguard Worker COUNTER(VFD_PERFCTR_VFD_SEL_2, RBBM_PERFCTR_VFD_2_LO, RBBM_PERFCTR_VFD_2_HI), 518*61046927SAndroid Build Coastguard Worker COUNTER(VFD_PERFCTR_VFD_SEL_3, RBBM_PERFCTR_VFD_3_LO, RBBM_PERFCTR_VFD_3_HI), 519*61046927SAndroid Build Coastguard Worker COUNTER(VFD_PERFCTR_VFD_SEL_4, RBBM_PERFCTR_VFD_4_LO, RBBM_PERFCTR_VFD_4_HI), 520*61046927SAndroid Build Coastguard Worker COUNTER(VFD_PERFCTR_VFD_SEL_5, RBBM_PERFCTR_VFD_5_LO, RBBM_PERFCTR_VFD_5_HI), 521*61046927SAndroid Build Coastguard Worker COUNTER(VFD_PERFCTR_VFD_SEL_6, RBBM_PERFCTR_VFD_6_LO, RBBM_PERFCTR_VFD_6_HI), 522*61046927SAndroid Build Coastguard Worker COUNTER(VFD_PERFCTR_VFD_SEL_7, RBBM_PERFCTR_VFD_7_LO, RBBM_PERFCTR_VFD_7_HI), 523*61046927SAndroid Build Coastguard Worker }; 524*61046927SAndroid Build Coastguard Worker 525*61046927SAndroid Build Coastguard Worker static const struct fd_perfcntr_countable vfd_countables[] = { 526*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VFD_BUSY_CYCLES, UINT64, AVERAGE), 527*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VFD_STALL_CYCLES_UCHE, UINT64, AVERAGE), 528*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VFD_STALL_CYCLES_VPC_ALLOC, UINT64, AVERAGE), 529*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VFD_STALL_CYCLES_MISS_VB, UINT64, AVERAGE), 530*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VFD_STALL_CYCLES_MISS_Q, UINT64, AVERAGE), 531*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VFD_STALL_CYCLES_SP_INFO, UINT64, AVERAGE), 532*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VFD_STALL_CYCLES_SP_ATTR, UINT64, AVERAGE), 533*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VFD_STALL_CYCLES_VFDP_VB, UINT64, AVERAGE), 534*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VFD_STALL_CYCLES_VFDP_Q, UINT64, AVERAGE), 535*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VFD_DECODER_PACKER_STALL, UINT64, AVERAGE), 536*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VFD_STARVE_CYCLES_UCHE, UINT64, AVERAGE), 537*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VFD_RBUFFER_FULL, UINT64, AVERAGE), 538*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VFD_ATTR_INFO_FIFO_FULL, UINT64, AVERAGE), 539*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VFD_DECODED_ATTRIBUTE_BYTES, UINT64, AVERAGE), 540*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VFD_NUM_ATTRIBUTES, UINT64, AVERAGE), 541*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VFD_INSTRUCTIONS, UINT64, AVERAGE), 542*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VFD_UPPER_SHADER_FIBERS, UINT64, AVERAGE), 543*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VFD_LOWER_SHADER_FIBERS, UINT64, AVERAGE), 544*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VFD_MODE_0_FIBERS, UINT64, AVERAGE), 545*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VFD_MODE_1_FIBERS, UINT64, AVERAGE), 546*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VFD_MODE_2_FIBERS, UINT64, AVERAGE), 547*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VFD_MODE_3_FIBERS, UINT64, AVERAGE), 548*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VFD_MODE_4_FIBERS, UINT64, AVERAGE), 549*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VFD_TOTAL_VERTICES, UINT64, AVERAGE), 550*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VFD_NUM_ATTR_MISS, UINT64, AVERAGE), 551*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VFD_1_BURST_REQ, UINT64, AVERAGE), 552*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VFDP_STALL_CYCLES_VFD, UINT64, AVERAGE), 553*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VFDP_STALL_CYCLES_VFD_INDEX, UINT64, AVERAGE), 554*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VFDP_STALL_CYCLES_VFD_PROG, UINT64, AVERAGE), 555*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VFDP_STARVE_CYCLES_PC, UINT64, AVERAGE), 556*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VFDP_VS_STAGE_32_WAVES, UINT64, AVERAGE), 557*61046927SAndroid Build Coastguard Worker }; 558*61046927SAndroid Build Coastguard Worker 559*61046927SAndroid Build Coastguard Worker static const struct fd_perfcntr_counter vpc_counters[] = { 560*61046927SAndroid Build Coastguard Worker COUNTER(VPC_PERFCTR_VPC_SEL_0, RBBM_PERFCTR_VPC_0_LO, RBBM_PERFCTR_VPC_0_HI), 561*61046927SAndroid Build Coastguard Worker COUNTER(VPC_PERFCTR_VPC_SEL_1, RBBM_PERFCTR_VPC_1_LO, RBBM_PERFCTR_VPC_1_HI), 562*61046927SAndroid Build Coastguard Worker COUNTER(VPC_PERFCTR_VPC_SEL_2, RBBM_PERFCTR_VPC_2_LO, RBBM_PERFCTR_VPC_2_HI), 563*61046927SAndroid Build Coastguard Worker COUNTER(VPC_PERFCTR_VPC_SEL_3, RBBM_PERFCTR_VPC_3_LO, RBBM_PERFCTR_VPC_3_HI), 564*61046927SAndroid Build Coastguard Worker }; 565*61046927SAndroid Build Coastguard Worker 566*61046927SAndroid Build Coastguard Worker static const struct fd_perfcntr_countable vpc_countables[] = { 567*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VPC_BUSY_CYCLES, UINT64, AVERAGE), 568*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VPC_WORKING_CYCLES, UINT64, AVERAGE), 569*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VPC_STALL_CYCLES_UCHE, UINT64, AVERAGE), 570*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VPC_STALL_CYCLES_VFD_WACK, UINT64, AVERAGE), 571*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VPC_STALL_CYCLES_HLSQ_PRIM_ALLOC, UINT64, AVERAGE), 572*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VPC_STALL_CYCLES_PC, UINT64, AVERAGE), 573*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VPC_STALL_CYCLES_SP_LM, UINT64, AVERAGE), 574*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VPC_POS_EXPORT_STALL_CYCLES, UINT64, AVERAGE), 575*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VPC_STARVE_CYCLES_SP, UINT64, AVERAGE), 576*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VPC_STARVE_CYCLES_LRZ, UINT64, AVERAGE), 577*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VPC_PC_PRIMITIVES, UINT64, AVERAGE), 578*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VPC_SP_COMPONENTS, UINT64, AVERAGE), 579*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VPC_SP_LM_PRIMITIVES, UINT64, AVERAGE), 580*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VPC_SP_LM_COMPONENTS, UINT64, AVERAGE), 581*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VPC_SP_LM_DWORDS, UINT64, AVERAGE), 582*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VPC_STREAMOUT_COMPONENTS, UINT64, AVERAGE), 583*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VPC_GRANT_PHASES, UINT64, AVERAGE), 584*61046927SAndroid Build Coastguard Worker }; 585*61046927SAndroid Build Coastguard Worker 586*61046927SAndroid Build Coastguard Worker static const struct fd_perfcntr_counter vsc_counters[] = { 587*61046927SAndroid Build Coastguard Worker COUNTER(VSC_PERFCTR_VSC_SEL_0, RBBM_PERFCTR_VSC_0_LO, RBBM_PERFCTR_VSC_0_HI), 588*61046927SAndroid Build Coastguard Worker COUNTER(VSC_PERFCTR_VSC_SEL_1, RBBM_PERFCTR_VSC_1_LO, RBBM_PERFCTR_VSC_1_HI), 589*61046927SAndroid Build Coastguard Worker }; 590*61046927SAndroid Build Coastguard Worker 591*61046927SAndroid Build Coastguard Worker static const struct fd_perfcntr_countable vsc_countables[] = { 592*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VSC_BUSY_CYCLES, UINT64, AVERAGE), 593*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VSC_WORKING_CYCLES, UINT64, AVERAGE), 594*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VSC_STALL_CYCLES_UCHE, UINT64, AVERAGE), 595*61046927SAndroid Build Coastguard Worker COUNTABLE(PERF_VSC_EOT_NUM, UINT64, AVERAGE), 596*61046927SAndroid Build Coastguard Worker }; 597*61046927SAndroid Build Coastguard Worker 598*61046927SAndroid Build Coastguard Worker /* VBIF counters probably not too userful for userspace, and they make 599*61046927SAndroid Build Coastguard Worker * frameretrace take many more passes to collect all the metrics, so 600*61046927SAndroid Build Coastguard Worker * for now let's hide them. 601*61046927SAndroid Build Coastguard Worker */ 602*61046927SAndroid Build Coastguard Worker #if 0 603*61046927SAndroid Build Coastguard Worker /* VBIF counters break the pattern a bit, with enable and clear regs: */ 604*61046927SAndroid Build Coastguard Worker static const struct fd_perfcntr_counter vbif_counters[] = { 605*61046927SAndroid Build Coastguard Worker COUNTER2(VBIF_PERF_CNT_SEL0, VBIF_PERF_CNT_LOW0, VBIF_PERF_CNT_HIGH0, VBIF_PERF_CNT_EN0, VBIF_PERF_CNT_CLR0), 606*61046927SAndroid Build Coastguard Worker COUNTER2(VBIF_PERF_CNT_SEL1, VBIF_PERF_CNT_LOW1, VBIF_PERF_CNT_HIGH1, VBIF_PERF_CNT_EN1, VBIF_PERF_CNT_CLR1), 607*61046927SAndroid Build Coastguard Worker COUNTER2(VBIF_PERF_CNT_SEL2, VBIF_PERF_CNT_LOW2, VBIF_PERF_CNT_HIGH2, VBIF_PERF_CNT_EN2, VBIF_PERF_CNT_CLR2), 608*61046927SAndroid Build Coastguard Worker COUNTER2(VBIF_PERF_CNT_SEL3, VBIF_PERF_CNT_LOW3, VBIF_PERF_CNT_HIGH3, VBIF_PERF_CNT_EN3, VBIF_PERF_CNT_CLR3), 609*61046927SAndroid Build Coastguard Worker }; 610*61046927SAndroid Build Coastguard Worker 611*61046927SAndroid Build Coastguard Worker static const struct fd_perfcntr_countable vbif_countables[] = { 612*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_READ_REQUESTS_ID_0, UINT64, AVERAGE), 613*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_READ_REQUESTS_ID_1, UINT64, AVERAGE), 614*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_READ_REQUESTS_ID_2, UINT64, AVERAGE), 615*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_READ_REQUESTS_ID_3, UINT64, AVERAGE), 616*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_READ_REQUESTS_ID_4, UINT64, AVERAGE), 617*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_READ_REQUESTS_ID_5, UINT64, AVERAGE), 618*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_READ_REQUESTS_ID_6, UINT64, AVERAGE), 619*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_READ_REQUESTS_ID_7, UINT64, AVERAGE), 620*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_READ_REQUESTS_ID_8, UINT64, AVERAGE), 621*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_READ_REQUESTS_ID_9, UINT64, AVERAGE), 622*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_READ_REQUESTS_ID_10, UINT64, AVERAGE), 623*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_READ_REQUESTS_ID_11, UINT64, AVERAGE), 624*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_READ_REQUESTS_ID_12, UINT64, AVERAGE), 625*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_READ_REQUESTS_ID_13, UINT64, AVERAGE), 626*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_READ_REQUESTS_ID_14, UINT64, AVERAGE), 627*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_READ_REQUESTS_ID_15, UINT64, AVERAGE), 628*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI0_READ_REQUESTS_TOTAL, UINT64, AVERAGE), 629*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI1_READ_REQUESTS_TOTAL, UINT64, AVERAGE), 630*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI2_READ_REQUESTS_TOTAL, UINT64, AVERAGE), 631*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI3_READ_REQUESTS_TOTAL, UINT64, AVERAGE), 632*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_READ_REQUESTS_TOTAL, UINT64, AVERAGE), 633*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_WRITE_REQUESTS_ID_0, UINT64, AVERAGE), 634*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_WRITE_REQUESTS_ID_1, UINT64, AVERAGE), 635*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_WRITE_REQUESTS_ID_2, UINT64, AVERAGE), 636*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_WRITE_REQUESTS_ID_3, UINT64, AVERAGE), 637*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_WRITE_REQUESTS_ID_4, UINT64, AVERAGE), 638*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_WRITE_REQUESTS_ID_5, UINT64, AVERAGE), 639*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_WRITE_REQUESTS_ID_6, UINT64, AVERAGE), 640*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_WRITE_REQUESTS_ID_7, UINT64, AVERAGE), 641*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_WRITE_REQUESTS_ID_8, UINT64, AVERAGE), 642*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_WRITE_REQUESTS_ID_9, UINT64, AVERAGE), 643*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_WRITE_REQUESTS_ID_10, UINT64, AVERAGE), 644*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_WRITE_REQUESTS_ID_11, UINT64, AVERAGE), 645*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_WRITE_REQUESTS_ID_12, UINT64, AVERAGE), 646*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_WRITE_REQUESTS_ID_13, UINT64, AVERAGE), 647*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_WRITE_REQUESTS_ID_14, UINT64, AVERAGE), 648*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_WRITE_REQUESTS_ID_15, UINT64, AVERAGE), 649*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI0_WRITE_REQUESTS_TOTAL, UINT64, AVERAGE), 650*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI1_WRITE_REQUESTS_TOTAL, UINT64, AVERAGE), 651*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI2_WRITE_REQUESTS_TOTAL, UINT64, AVERAGE), 652*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI3_WRITE_REQUESTS_TOTAL, UINT64, AVERAGE), 653*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_WRITE_REQUESTS_TOTAL, UINT64, AVERAGE), 654*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_TOTAL_REQUESTS, UINT64, AVERAGE), 655*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_READ_DATA_BEATS_ID_0, UINT64, AVERAGE), 656*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_READ_DATA_BEATS_ID_1, UINT64, AVERAGE), 657*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_READ_DATA_BEATS_ID_2, UINT64, AVERAGE), 658*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_READ_DATA_BEATS_ID_3, UINT64, AVERAGE), 659*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_READ_DATA_BEATS_ID_4, UINT64, AVERAGE), 660*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_READ_DATA_BEATS_ID_5, UINT64, AVERAGE), 661*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_READ_DATA_BEATS_ID_6, UINT64, AVERAGE), 662*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_READ_DATA_BEATS_ID_7, UINT64, AVERAGE), 663*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_READ_DATA_BEATS_ID_8, UINT64, AVERAGE), 664*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_READ_DATA_BEATS_ID_9, UINT64, AVERAGE), 665*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_READ_DATA_BEATS_ID_10, UINT64, AVERAGE), 666*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_READ_DATA_BEATS_ID_11, UINT64, AVERAGE), 667*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_READ_DATA_BEATS_ID_12, UINT64, AVERAGE), 668*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_READ_DATA_BEATS_ID_13, UINT64, AVERAGE), 669*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_READ_DATA_BEATS_ID_14, UINT64, AVERAGE), 670*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_READ_DATA_BEATS_ID_15, UINT64, AVERAGE), 671*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI0_READ_DATA_BEATS_TOTAL, UINT64, AVERAGE), 672*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI1_READ_DATA_BEATS_TOTAL, UINT64, AVERAGE), 673*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI2_READ_DATA_BEATS_TOTAL, UINT64, AVERAGE), 674*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI3_READ_DATA_BEATS_TOTAL, UINT64, AVERAGE), 675*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_READ_DATA_BEATS_TOTAL, UINT64, AVERAGE), 676*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_WRITE_DATA_BEATS_ID_0, UINT64, AVERAGE), 677*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_WRITE_DATA_BEATS_ID_1, UINT64, AVERAGE), 678*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_WRITE_DATA_BEATS_ID_2, UINT64, AVERAGE), 679*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_WRITE_DATA_BEATS_ID_3, UINT64, AVERAGE), 680*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_WRITE_DATA_BEATS_ID_4, UINT64, AVERAGE), 681*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_WRITE_DATA_BEATS_ID_5, UINT64, AVERAGE), 682*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_WRITE_DATA_BEATS_ID_6, UINT64, AVERAGE), 683*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_WRITE_DATA_BEATS_ID_7, UINT64, AVERAGE), 684*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_WRITE_DATA_BEATS_ID_8, UINT64, AVERAGE), 685*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_WRITE_DATA_BEATS_ID_9, UINT64, AVERAGE), 686*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_WRITE_DATA_BEATS_ID_10, UINT64, AVERAGE), 687*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_WRITE_DATA_BEATS_ID_11, UINT64, AVERAGE), 688*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_WRITE_DATA_BEATS_ID_12, UINT64, AVERAGE), 689*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_WRITE_DATA_BEATS_ID_13, UINT64, AVERAGE), 690*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_WRITE_DATA_BEATS_ID_14, UINT64, AVERAGE), 691*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_WRITE_DATA_BEATS_ID_15, UINT64, AVERAGE), 692*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI0_WRITE_DATA_BEATS_TOTAL, UINT64, AVERAGE), 693*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI1_WRITE_DATA_BEATS_TOTAL, UINT64, AVERAGE), 694*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI2_WRITE_DATA_BEATS_TOTAL, UINT64, AVERAGE), 695*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI3_WRITE_DATA_BEATS_TOTAL, UINT64, AVERAGE), 696*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_WRITE_DATA_BEATS_TOTAL, UINT64, AVERAGE), 697*61046927SAndroid Build Coastguard Worker COUNTABLE(AXI_DATA_BEATS_TOTAL, UINT64, AVERAGE), 698*61046927SAndroid Build Coastguard Worker }; 699*61046927SAndroid Build Coastguard Worker #endif 700*61046927SAndroid Build Coastguard Worker 701*61046927SAndroid Build Coastguard Worker const struct fd_perfcntr_group a5xx_perfcntr_groups[] = { 702*61046927SAndroid Build Coastguard Worker GROUP("CP", cp_counters, cp_countables), 703*61046927SAndroid Build Coastguard Worker GROUP("CCU", ccu_counters, ccu_countables), 704*61046927SAndroid Build Coastguard Worker GROUP("TSE", tse_counters, tse_countables), 705*61046927SAndroid Build Coastguard Worker GROUP("RAS", ras_counters, ras_countables), 706*61046927SAndroid Build Coastguard Worker GROUP("LRZ", lrz_counters, lrz_countables), 707*61046927SAndroid Build Coastguard Worker GROUP("HLSQ", hlsq_counters, hlsq_countables), 708*61046927SAndroid Build Coastguard Worker GROUP("PC", pc_counters, pc_countables), 709*61046927SAndroid Build Coastguard Worker GROUP("RB", rb_counters, rb_countables), 710*61046927SAndroid Build Coastguard Worker GROUP("RBBM", rbbm_counters, rbbm_countables), 711*61046927SAndroid Build Coastguard Worker GROUP("SP", sp_counters, sp_countables), 712*61046927SAndroid Build Coastguard Worker GROUP("TP", tp_counters, tp_countables), 713*61046927SAndroid Build Coastguard Worker GROUP("UCHE", uche_counters, uche_countables), 714*61046927SAndroid Build Coastguard Worker GROUP("VFD", vfd_counters, vfd_countables), 715*61046927SAndroid Build Coastguard Worker GROUP("VPC", vpc_counters, vpc_countables), 716*61046927SAndroid Build Coastguard Worker GROUP("VSC", vsc_counters, vsc_countables), 717*61046927SAndroid Build Coastguard Worker // GROUP("VBIF", vbif_counters, vbif_countables), 718*61046927SAndroid Build Coastguard Worker }; 719*61046927SAndroid Build Coastguard Worker 720*61046927SAndroid Build Coastguard Worker const unsigned a5xx_num_perfcntr_groups = ARRAY_SIZE(a5xx_perfcntr_groups); 721*61046927SAndroid Build Coastguard Worker 722*61046927SAndroid Build Coastguard Worker #endif /* FD5_PERFCNTR_H_ */ 723