3a3a901e592966d92453825ee37ccfb07e36c4a4
[firefly-linux-kernel-4.4.55.git] / drivers / gpu / drm / nouveau / nvkm / engine / pm / gf100.h
1 #ifndef __NVKM_PM_NVC0_H__
2 #define __NVKM_PM_NVC0_H__
3 #include "priv.h"
4
5 struct gf100_pm_oclass {
6         struct nvkm_oclass base;
7         const struct nvkm_specdom *doms_hub;
8         const struct nvkm_specdom *doms_gpc;
9         const struct nvkm_specdom *doms_part;
10 };
11
12 struct gf100_pm_priv {
13         struct nvkm_pm base;
14 };
15
16 int gf100_pm_ctor(struct nvkm_object *, struct nvkm_object *,
17                   struct nvkm_oclass *, void *data, u32 size,
18                   struct nvkm_object **pobject);
19
20 struct gf100_pm_cntr {
21         struct nvkm_perfctr base;
22 };
23
24 extern const struct nvkm_funcdom gf100_perfctr_func;
25 int gf100_pm_fini(struct nvkm_object *, bool);
26
27 extern const struct nvkm_specdom gf100_pm_gpc[];
28
29 extern const struct nvkm_specsrc gf100_pbfb_sources[];
30 extern const struct nvkm_specsrc gf100_pmfb_sources[];
31
32 #endif