1*61046927SAndroid Build Coastguard Worker /* 2*61046927SAndroid Build Coastguard Worker * Copyright © 2019 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 #include <stddef.h> 10*61046927SAndroid Build Coastguard Worker 11*61046927SAndroid Build Coastguard Worker #include "freedreno_perfcntr.h" 12*61046927SAndroid Build Coastguard Worker 13*61046927SAndroid Build Coastguard Worker extern const struct fd_perfcntr_group a2xx_perfcntr_groups[]; 14*61046927SAndroid Build Coastguard Worker extern const unsigned a2xx_num_perfcntr_groups; 15*61046927SAndroid Build Coastguard Worker 16*61046927SAndroid Build Coastguard Worker extern const struct fd_perfcntr_group a5xx_perfcntr_groups[]; 17*61046927SAndroid Build Coastguard Worker extern const unsigned a5xx_num_perfcntr_groups; 18*61046927SAndroid Build Coastguard Worker 19*61046927SAndroid Build Coastguard Worker extern const struct fd_perfcntr_group a6xx_perfcntr_groups[]; 20*61046927SAndroid Build Coastguard Worker extern const unsigned a6xx_num_perfcntr_groups; 21*61046927SAndroid Build Coastguard Worker 22*61046927SAndroid Build Coastguard Worker extern const struct fd_perfcntr_group a7xx_perfcntr_groups[]; 23*61046927SAndroid Build Coastguard Worker extern const unsigned a7xx_num_perfcntr_groups; 24*61046927SAndroid Build Coastguard Worker 25*61046927SAndroid Build Coastguard Worker const struct fd_perfcntr_group * fd_perfcntrs(const struct fd_dev_id * id,unsigned * count)26*61046927SAndroid Build Coastguard Workerfd_perfcntrs(const struct fd_dev_id *id, unsigned *count) 27*61046927SAndroid Build Coastguard Worker { 28*61046927SAndroid Build Coastguard Worker switch (fd_dev_gen(id)) { 29*61046927SAndroid Build Coastguard Worker case 2: 30*61046927SAndroid Build Coastguard Worker *count = a2xx_num_perfcntr_groups; 31*61046927SAndroid Build Coastguard Worker return a2xx_perfcntr_groups; 32*61046927SAndroid Build Coastguard Worker case 5: 33*61046927SAndroid Build Coastguard Worker *count = a5xx_num_perfcntr_groups; 34*61046927SAndroid Build Coastguard Worker return a5xx_perfcntr_groups; 35*61046927SAndroid Build Coastguard Worker case 6: 36*61046927SAndroid Build Coastguard Worker *count = a6xx_num_perfcntr_groups; 37*61046927SAndroid Build Coastguard Worker return a6xx_perfcntr_groups; 38*61046927SAndroid Build Coastguard Worker case 7: 39*61046927SAndroid Build Coastguard Worker *count = a7xx_num_perfcntr_groups; 40*61046927SAndroid Build Coastguard Worker return a7xx_perfcntr_groups; 41*61046927SAndroid Build Coastguard Worker default: 42*61046927SAndroid Build Coastguard Worker *count = 0; 43*61046927SAndroid Build Coastguard Worker return NULL; 44*61046927SAndroid Build Coastguard Worker } 45*61046927SAndroid Build Coastguard Worker } 46