1151abd44SBen Skeggs #ifndef __NV50_DEVINIT_H__
2151abd44SBen Skeggs #define __NV50_DEVINIT_H__
3151abd44SBen Skeggs #define nv50_devinit(p) container_of((p), struct nv50_devinit, base)
4c39f472eSBen Skeggs #include "priv.h"
5c39f472eSBen Skeggs 
6266f8b5eSBen Skeggs struct nv50_devinit {
7a8c4362bSBen Skeggs 	struct nvkm_devinit base;
8c39f472eSBen Skeggs 	u32 r001540;
9c39f472eSBen Skeggs };
10c39f472eSBen Skeggs 
11151abd44SBen Skeggs int nv50_devinit_new_(const struct nvkm_devinit_func *, struct nvkm_device *,
12151abd44SBen Skeggs 		      int, struct nvkm_devinit **);
13151abd44SBen Skeggs void nv50_devinit_preinit(struct nvkm_devinit *);
14151abd44SBen Skeggs void nv50_devinit_init(struct nvkm_devinit *);
15a8c4362bSBen Skeggs int  nv50_devinit_pll_set(struct nvkm_devinit *, u32, u32);
16c39f472eSBen Skeggs 
17a8c4362bSBen Skeggs int  gt215_devinit_pll_set(struct nvkm_devinit *, u32, u32);
18c39f472eSBen Skeggs 
194d4d6f75SBen Skeggs int  gf100_devinit_ctor(struct nvkm_object *, struct nvkm_object *,
204d4d6f75SBen Skeggs 			struct nvkm_oclass *, void *, u32,
214d4d6f75SBen Skeggs 			struct nvkm_object **);
22a8c4362bSBen Skeggs int  gf100_devinit_pll_set(struct nvkm_devinit *, u32, u32);
23a6a0f67cSAlexandre Courbot void gf100_devinit_preinit(struct nvkm_devinit *);
24c39f472eSBen Skeggs 
25a8c4362bSBen Skeggs u64  gm107_devinit_disable(struct nvkm_devinit *);
26c39f472eSBen Skeggs #endif
27