1 #ifndef __NVKM_DEVINIT_H__
2 #define __NVKM_DEVINIT_H__
3 #include <core/subdev.h>
6 struct nvkm_subdev base;
8 void (*meminit)(struct nvkm_devinit *);
9 int (*pll_set)(struct nvkm_devinit *, u32 type, u32 freq);
10 u32 (*mmio)(struct nvkm_devinit *, u32 addr);
13 static inline struct nvkm_devinit *
14 nvkm_devinit(void *obj)
16 return (void *)nvkm_subdev(obj, NVDEV_SUBDEV_DEVINIT);
19 extern struct nvkm_oclass *nv04_devinit_oclass;
20 extern struct nvkm_oclass *nv05_devinit_oclass;
21 extern struct nvkm_oclass *nv10_devinit_oclass;
22 extern struct nvkm_oclass *nv1a_devinit_oclass;
23 extern struct nvkm_oclass *nv20_devinit_oclass;
24 extern struct nvkm_oclass *nv50_devinit_oclass;
25 extern struct nvkm_oclass *g84_devinit_oclass;
26 extern struct nvkm_oclass *g98_devinit_oclass;
27 extern struct nvkm_oclass *gt215_devinit_oclass;
28 extern struct nvkm_oclass *mcp89_devinit_oclass;
29 extern struct nvkm_oclass *gf100_devinit_oclass;
30 extern struct nvkm_oclass *gm107_devinit_oclass;
31 extern struct nvkm_oclass *gm204_devinit_oclass;