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