Home | History | Annotate | Line # | Download | only in engine
      1 /*	$NetBSD: gr.h,v 1.3 2021/12/18 23:45:33 riastradh Exp $	*/
      2 
      3 /* SPDX-License-Identifier: MIT */
      4 #ifndef __NVKM_GR_H__
      5 #define __NVKM_GR_H__
      6 #include <core/engine.h>
      7 
      8 struct nvkm_gr {
      9 	const struct nvkm_gr_func *func;
     10 	struct nvkm_engine engine;
     11 };
     12 
     13 u64 nvkm_gr_units(struct nvkm_gr *);
     14 int nvkm_gr_tlb_flush(struct nvkm_gr *);
     15 int nvkm_gr_ctxsw_pause(struct nvkm_device *);
     16 int nvkm_gr_ctxsw_resume(struct nvkm_device *);
     17 u32 nvkm_gr_ctxsw_inst(struct nvkm_device *);
     18 
     19 int nv04_gr_new(struct nvkm_device *, int, struct nvkm_gr **);
     20 int nv10_gr_new(struct nvkm_device *, int, struct nvkm_gr **);
     21 int nv15_gr_new(struct nvkm_device *, int, struct nvkm_gr **);
     22 int nv17_gr_new(struct nvkm_device *, int, struct nvkm_gr **);
     23 int nv20_gr_new(struct nvkm_device *, int, struct nvkm_gr **);
     24 int nv25_gr_new(struct nvkm_device *, int, struct nvkm_gr **);
     25 int nv2a_gr_new(struct nvkm_device *, int, struct nvkm_gr **);
     26 int nv30_gr_new(struct nvkm_device *, int, struct nvkm_gr **);
     27 int nv34_gr_new(struct nvkm_device *, int, struct nvkm_gr **);
     28 int nv35_gr_new(struct nvkm_device *, int, struct nvkm_gr **);
     29 int nv40_gr_new(struct nvkm_device *, int, struct nvkm_gr **);
     30 int nv44_gr_new(struct nvkm_device *, int, struct nvkm_gr **);
     31 int nv50_gr_new(struct nvkm_device *, int, struct nvkm_gr **);
     32 int g84_gr_new(struct nvkm_device *, int, struct nvkm_gr **);
     33 int gt200_gr_new(struct nvkm_device *, int, struct nvkm_gr **);
     34 int mcp79_gr_new(struct nvkm_device *, int, struct nvkm_gr **);
     35 int gt215_gr_new(struct nvkm_device *, int, struct nvkm_gr **);
     36 int mcp89_gr_new(struct nvkm_device *, int, struct nvkm_gr **);
     37 int gf100_gr_new(struct nvkm_device *, int, struct nvkm_gr **);
     38 int gf104_gr_new(struct nvkm_device *, int, struct nvkm_gr **);
     39 int gf108_gr_new(struct nvkm_device *, int, struct nvkm_gr **);
     40 int gf110_gr_new(struct nvkm_device *, int, struct nvkm_gr **);
     41 int gf117_gr_new(struct nvkm_device *, int, struct nvkm_gr **);
     42 int gf119_gr_new(struct nvkm_device *, int, struct nvkm_gr **);
     43 int gk104_gr_new(struct nvkm_device *, int, struct nvkm_gr **);
     44 int gk110_gr_new(struct nvkm_device *, int, struct nvkm_gr **);
     45 int gk110b_gr_new(struct nvkm_device *, int, struct nvkm_gr **);
     46 int gk208_gr_new(struct nvkm_device *, int, struct nvkm_gr **);
     47 int gk20a_gr_new(struct nvkm_device *, int, struct nvkm_gr **);
     48 int gm107_gr_new(struct nvkm_device *, int, struct nvkm_gr **);
     49 int gm200_gr_new(struct nvkm_device *, int, struct nvkm_gr **);
     50 int gm20b_gr_new(struct nvkm_device *, int, struct nvkm_gr **);
     51 int gp100_gr_new(struct nvkm_device *, int, struct nvkm_gr **);
     52 int gp102_gr_new(struct nvkm_device *, int, struct nvkm_gr **);
     53 int gp104_gr_new(struct nvkm_device *, int, struct nvkm_gr **);
     54 int gp107_gr_new(struct nvkm_device *, int, struct nvkm_gr **);
     55 int gp108_gr_new(struct nvkm_device *, int, struct nvkm_gr **);
     56 int gp10b_gr_new(struct nvkm_device *, int, struct nvkm_gr **);
     57 int gv100_gr_new(struct nvkm_device *, int, struct nvkm_gr **);
     58 int tu102_gr_new(struct nvkm_device *, int, struct nvkm_gr **);
     59 #endif
     60