1
2#ifndef __NVKM_DEVINIT_H__
3#define __NVKM_DEVINIT_H__
4#include <core/subdev.h>
5struct nvkm_devinit;
6
7struct nvkm_devinit {
8 const struct nvkm_devinit_func *func;
9 struct nvkm_subdev subdev;
10 bool post;
11 bool force_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 gm200_devinit_new(struct nvkm_device *, int, struct nvkm_devinit **);
33int gv100_devinit_new(struct nvkm_device *, int, struct nvkm_devinit **);
34int tu102_devinit_new(struct nvkm_device *, int, struct nvkm_devinit **);
35#endif
36