39 lines · c
1/* SPDX-License-Identifier: GPL-2.0 */2/*3 * Copyright (C) 2017 Etnaviv Project4 * Copyright (C) 2017 Zodiac Inflight Innovations5 */6 7#ifndef __ETNAVIV_PERFMON_H__8#define __ETNAVIV_PERFMON_H__9 10struct etnaviv_gpu;11struct drm_etnaviv_pm_domain;12struct drm_etnaviv_pm_signal;13 14struct etnaviv_perfmon_request15{16 u32 flags;17 u8 domain;18 u8 signal;19 u32 sequence;20 21 /* bo to store a value */22 u32 *bo_vma;23 u32 offset;24};25 26int etnaviv_pm_query_dom(struct etnaviv_gpu *gpu,27 struct drm_etnaviv_pm_domain *domain);28 29int etnaviv_pm_query_sig(struct etnaviv_gpu *gpu,30 struct drm_etnaviv_pm_signal *signal);31 32int etnaviv_pm_req_validate(const struct drm_etnaviv_gem_submit_pmr *r,33 u32 exec_state);34 35void etnaviv_perfmon_process(struct etnaviv_gpu *gpu,36 const struct etnaviv_perfmon_request *pmr, u32 exec_state);37 38#endif /* __ETNAVIV_PERFMON_H__ */39