devinit.h revision 1.1
1/*	$NetBSD: devinit.h,v 1.1 2018/08/27 01:34:55 riastradh Exp $	*/
2
3#ifndef __NVKM_DEVINIT_H__
4#define __NVKM_DEVINIT_H__
5#include <core/subdev.h>
6struct nvkm_devinit;
7
8struct nvkm_devinit {
9	const struct nvkm_devinit_func *func;
10	struct nvkm_subdev subdev;
11	bool post;
12};
13
14u32 nvkm_devinit_mmio(struct nvkm_devinit *, u32 addr);
15int nvkm_devinit_pll_set(struct nvkm_devinit *, u32 type, u32 khz);
16void nvkm_devinit_meminit(struct nvkm_devinit *);
17u64 nvkm_devinit_disable(struct nvkm_devinit *);
18int nvkm_devinit_post(struct nvkm_devinit *, u64 *disable);
19
20int nv04_devinit_new(struct nvkm_device *, int, struct nvkm_devinit **);
21int nv05_devinit_new(struct nvkm_device *, int, struct nvkm_devinit **);
22int nv10_devinit_new(struct nvkm_device *, int, struct nvkm_devinit **);
23int nv1a_devinit_new(struct nvkm_device *, int, struct nvkm_devinit **);
24int nv20_devinit_new(struct nvkm_device *, int, struct nvkm_devinit **);
25int nv50_devinit_new(struct nvkm_device *, int, struct nvkm_devinit **);
26int g84_devinit_new(struct nvkm_device *, int, struct nvkm_devinit **);
27int g98_devinit_new(struct nvkm_device *, int, struct nvkm_devinit **);
28int gt215_devinit_new(struct nvkm_device *, int, struct nvkm_devinit **);
29int mcp89_devinit_new(struct nvkm_device *, int, struct nvkm_devinit **);
30int gf100_devinit_new(struct nvkm_device *, int, struct nvkm_devinit **);
31int gm107_devinit_new(struct nvkm_device *, int, struct nvkm_devinit **);
32int gm204_devinit_new(struct nvkm_device *, int, struct nvkm_devinit **);
33#endif
34