2019-06-19 20:13:43 -04:00
|
|
|
/* SPDX-License-Identifier: MIT */
|
2015-08-20 14:54:20 +10:00
|
|
|
#ifndef __NV50_DEVINIT_H__
|
|
|
|
#define __NV50_DEVINIT_H__
|
|
|
|
#define nv50_devinit(p) container_of((p), struct nv50_devinit, base)
|
2014-01-14 15:55:38 +10:00
|
|
|
#include "priv.h"
|
|
|
|
|
2015-08-20 14:54:06 +10:00
|
|
|
struct nv50_devinit {
|
2015-01-14 14:48:16 +10:00
|
|
|
struct nvkm_devinit base;
|
2014-03-19 03:08:21 +10:00
|
|
|
u32 r001540;
|
2014-01-14 15:55:38 +10:00
|
|
|
};
|
|
|
|
|
2020-12-04 11:04:41 +10:00
|
|
|
int nv50_devinit_new_(const struct nvkm_devinit_func *, struct nvkm_device *, enum nvkm_subdev_type,
|
2015-08-20 14:54:20 +10:00
|
|
|
int, struct nvkm_devinit **);
|
|
|
|
void nv50_devinit_preinit(struct nvkm_devinit *);
|
|
|
|
void nv50_devinit_init(struct nvkm_devinit *);
|
2015-01-14 14:48:16 +10:00
|
|
|
int nv50_devinit_pll_set(struct nvkm_devinit *, u32, u32);
|
2014-01-14 15:55:38 +10:00
|
|
|
|
2015-01-14 14:48:16 +10:00
|
|
|
int gt215_devinit_pll_set(struct nvkm_devinit *, u32, u32);
|
2014-02-24 12:28:37 +10:00
|
|
|
|
2015-05-21 15:47:16 +10:00
|
|
|
int gf100_devinit_ctor(struct nvkm_object *, struct nvkm_object *,
|
|
|
|
struct nvkm_oclass *, void *, u32,
|
|
|
|
struct nvkm_object **);
|
2015-01-14 14:48:16 +10:00
|
|
|
int gf100_devinit_pll_set(struct nvkm_devinit *, u32, u32);
|
2016-02-11 11:10:04 +09:00
|
|
|
void gf100_devinit_preinit(struct nvkm_devinit *);
|
2014-09-23 15:42:45 +10:00
|
|
|
|
2023-01-25 20:37:14 +05:30
|
|
|
void gm107_devinit_disable(struct nvkm_devinit *);
|
2018-05-08 20:39:47 +10:00
|
|
|
|
|
|
|
int gm200_devinit_post(struct nvkm_devinit *, bool);
|
2018-12-11 14:50:02 +10:00
|
|
|
void gm200_devinit_preos(struct nv50_devinit *, bool);
|
2014-01-14 15:55:38 +10:00
|
|
|
#endif
|