251c8545ca58604943ceb276e2cc77caac012a95
[deliverable/linux.git] / drivers / gpu / drm / nouveau / include / nvkm / engine / perfmon.h
1 #ifndef __NVKM_PERFMON_H__
2 #define __NVKM_PERFMON_H__
3
4 #include <core/device.h>
5 #include <core/engine.h>
6 #include <core/engctx.h>
7
8 struct nouveau_perfdom;
9 struct nouveau_perfctr;
10 struct nouveau_perfmon {
11 struct nouveau_engine base;
12
13 struct nouveau_perfctx *context;
14 void *profile_data;
15
16 struct list_head domains;
17 u32 sequence;
18
19 /*XXX: temp for daemon backend */
20 u32 pwr[8];
21 u32 last;
22 };
23
24 static inline struct nouveau_perfmon *
25 nouveau_perfmon(void *obj)
26 {
27 return (void *)nouveau_engine(obj, NVDEV_ENGINE_PERFMON);
28 }
29
30 extern struct nouveau_oclass *nv40_perfmon_oclass;
31 extern struct nouveau_oclass *nv50_perfmon_oclass;
32 extern struct nouveau_oclass *nv84_perfmon_oclass;
33 extern struct nouveau_oclass *nva3_perfmon_oclass;
34 extern struct nouveau_oclass nvc0_perfmon_oclass;
35 extern struct nouveau_oclass nve0_perfmon_oclass;
36 extern struct nouveau_oclass nvf0_perfmon_oclass;
37
38 #endif
This page took 0.030753 seconds and 4 git commands to generate.