1 /* $NetBSD: sw.h,v 1.3 2021/12/18 23:45:33 riastradh Exp $ */ 2 3 /* SPDX-License-Identifier: MIT */ 4 #ifndef __NVKM_SW_H__ 5 #define __NVKM_SW_H__ 6 #include <core/engine.h> 7 8 struct nvkm_sw { 9 const struct nvkm_sw_func *func; 10 struct nvkm_engine engine; 11 12 struct list_head chan; 13 }; 14 15 bool nvkm_sw_mthd(struct nvkm_sw *sw, int chid, int subc, u32 mthd, u32 data); 16 17 int nv04_sw_new(struct nvkm_device *, int, struct nvkm_sw **); 18 int nv10_sw_new(struct nvkm_device *, int, struct nvkm_sw **); 19 int nv50_sw_new(struct nvkm_device *, int, struct nvkm_sw **); 20 int gf100_sw_new(struct nvkm_device *, int, struct nvkm_sw **); 21 #endif 22