2019-06-19 20:13:43 -04:00
|
|
|
/* SPDX-License-Identifier: MIT */
|
2015-01-14 15:32:15 +10:00
|
|
|
#ifndef __NVKM_SW_H__
|
|
|
|
#define __NVKM_SW_H__
|
|
|
|
#include <core/engine.h>
|
2015-01-14 12:34:00 +10:00
|
|
|
|
2015-01-14 15:32:15 +10:00
|
|
|
struct nvkm_sw {
|
2015-08-20 14:54:19 +10:00
|
|
|
const struct nvkm_sw_func *func;
|
2015-08-20 14:54:22 +10:00
|
|
|
struct nvkm_engine engine;
|
|
|
|
|
2015-08-20 14:54:18 +10:00
|
|
|
struct list_head chan;
|
2015-01-14 15:32:15 +10:00
|
|
|
};
|
2015-01-14 12:34:00 +10:00
|
|
|
|
2015-08-20 14:54:18 +10:00
|
|
|
bool nvkm_sw_mthd(struct nvkm_sw *sw, int chid, int subc, u32 mthd, u32 data);
|
|
|
|
|
2015-08-20 14:54:22 +10:00
|
|
|
int nv04_sw_new(struct nvkm_device *, int, struct nvkm_sw **);
|
|
|
|
int nv10_sw_new(struct nvkm_device *, int, struct nvkm_sw **);
|
|
|
|
int nv50_sw_new(struct nvkm_device *, int, struct nvkm_sw **);
|
|
|
|
int gf100_sw_new(struct nvkm_device *, int, struct nvkm_sw **);
|
2015-01-14 12:34:00 +10:00
|
|
|
#endif
|