1 #ifndef __NVKM_PM_PRIV_H__
2 #define __NVKM_PM_PRIV_H__
3 #define nvkm_pm(p) container_of((p), struct nvkm_pm, engine)
6 int nvkm_pm_ctor(const struct nvkm_pm_func
*, struct nvkm_device
*,
7 int index
, struct nvkm_pm
*);
10 void (*fini
)(struct nvkm_pm
*);
14 struct list_head head
;
32 const struct nvkm_specmux
*mux
;
37 struct list_head head
;
45 extern const struct nvkm_specsrc nv50_zcull_sources
[];
46 extern const struct nvkm_specsrc nv50_zrop_sources
[];
47 extern const struct nvkm_specsrc g84_vfetch_sources
[];
48 extern const struct nvkm_specsrc gt200_crop_sources
[];
49 extern const struct nvkm_specsrc gt200_prop_sources
[];
50 extern const struct nvkm_specsrc gt200_tex_sources
[];
55 const struct nvkm_specsrc
*source
;
65 const struct nvkm_specsig
*signal
;
66 const struct nvkm_funcdom
*func
;
69 #define nvkm_perfdom(p) container_of((p), struct nvkm_perfdom, object)
72 struct nvkm_object object
;
73 struct nvkm_perfmon
*perfmon
;
74 struct list_head head
;
75 struct list_head list
;
76 const struct nvkm_funcdom
*func
;
77 struct nvkm_perfctr
*ctr
[4];
83 struct nvkm_perfsig signal
[];
87 void (*init
)(struct nvkm_pm
*, struct nvkm_perfdom
*,
88 struct nvkm_perfctr
*);
89 void (*read
)(struct nvkm_pm
*, struct nvkm_perfdom
*,
90 struct nvkm_perfctr
*);
91 void (*next
)(struct nvkm_pm
*, struct nvkm_perfdom
*);
94 int nvkm_perfdom_new(struct nvkm_pm
*, const char *, u32
, u32
, u32
, u32
,
95 const struct nvkm_specdom
*);
97 #define nvkm_perfmon(p) container_of((p), struct nvkm_perfmon, object)
100 struct nvkm_object object
;