1 /* SPDX-License-Identifier: MIT */
2 #ifndef __NV04_DEVINIT_H__
3 #define __NV04_DEVINIT_H__
4 #define nv04_devinit(p) container_of((p), struct nv04_devinit, base)
5 #include "priv.h"
6 struct nvkm_pll_vals;
7 
8 struct nv04_devinit {
9 	struct nvkm_devinit base;
10 	int owner;
11 };
12 
13 int nv04_devinit_new_(const struct nvkm_devinit_func *, struct nvkm_device *,
14 		      enum nvkm_subdev_type, int, struct nvkm_devinit **);
15 void *nv04_devinit_dtor(struct nvkm_devinit *);
16 void nv04_devinit_preinit(struct nvkm_devinit *);
17 void nv04_devinit_fini(struct nvkm_devinit *);
18 int  nv04_devinit_pll_set(struct nvkm_devinit *, u32, u32);
19 
20 void setPLL_single(struct nvkm_devinit *, u32, struct nvkm_pll_vals *);
21 void setPLL_double_highregs(struct nvkm_devinit *, u32, struct nvkm_pll_vals *);
22 void setPLL_double_lowregs(struct nvkm_devinit *, u32, struct nvkm_pll_vals *);
23 #endif
24