xref: /netbsd-src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/subdev/devinit/nv04.h (revision 41ec02673d281bbb3d38e6c78504ce6e30c228c1)
1 /*	$NetBSD: nv04.h,v 1.3 2021/12/18 23:45:39 riastradh Exp $	*/
2 
3 /* SPDX-License-Identifier: MIT */
4 #ifndef __NV04_DEVINIT_H__
5 #define __NV04_DEVINIT_H__
6 #define nv04_devinit(p) container_of((p), struct nv04_devinit, base)
7 #include "priv.h"
8 struct nvkm_pll_vals;
9 
10 struct nv04_devinit {
11 	struct nvkm_devinit base;
12 	int owner;
13 };
14 
15 int nv04_devinit_new_(const struct nvkm_devinit_func *, struct nvkm_device *,
16 		      int, struct nvkm_devinit **);
17 void *nv04_devinit_dtor(struct nvkm_devinit *);
18 void nv04_devinit_preinit(struct nvkm_devinit *);
19 void nv04_devinit_fini(struct nvkm_devinit *);
20 int  nv04_devinit_pll_set(struct nvkm_devinit *, u32, u32);
21 
22 void setPLL_single(struct nvkm_devinit *, u32, struct nvkm_pll_vals *);
23 void setPLL_double_highregs(struct nvkm_devinit *, u32, struct nvkm_pll_vals *);
24 void setPLL_double_lowregs(struct nvkm_devinit *, u32, struct nvkm_pll_vals *);
25 #endif
26