1 /* 2 * Copyright (C) 2017 Etnaviv Project 3 * Copyright (C) 2017 Zodiac Inflight Innovations 4 * 5 * This program is free software; you can redistribute it and/or modify it 6 * under the terms of the GNU General Public License version 2 as published by 7 * the Free Software Foundation. 8 * 9 * This program is distributed in the hope that it will be useful, but WITHOUT 10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 * more details. 13 * 14 * You should have received a copy of the GNU General Public License along with 15 * this program. If not, see <http://www.gnu.org/licenses/>. 16 */ 17 18 #ifndef __ETNAVIV_PERFMON_H__ 19 #define __ETNAVIV_PERFMON_H__ 20 21 struct etnaviv_gpu; 22 struct drm_etnaviv_pm_domain; 23 struct drm_etnaviv_pm_signal; 24 25 struct etnaviv_perfmon_request 26 { 27 u32 flags; 28 u8 domain; 29 u8 signal; 30 u32 sequence; 31 32 /* bo to store a value */ 33 u32 *bo_vma; 34 u32 offset; 35 }; 36 37 int etnaviv_pm_query_dom(struct etnaviv_gpu *gpu, 38 struct drm_etnaviv_pm_domain *domain); 39 40 int etnaviv_pm_query_sig(struct etnaviv_gpu *gpu, 41 struct drm_etnaviv_pm_signal *signal); 42 43 #endif /* __ETNAVIV_PERFMON_H__ */ 44