]>
Commit | Line | Data |
---|---|---|
b2441318 | 1 | /* SPDX-License-Identifier: GPL-2.0 */ |
9a65a38c BS |
2 | #ifndef __GK104_FIFO_CHAN_H__ |
3 | #define __GK104_FIFO_CHAN_H__ | |
8f0649b5 | 4 | #define gk104_fifo_chan(p) container_of((p), struct gk104_fifo_chan, base) |
9a65a38c BS |
5 | #include "chan.h" |
6 | #include "gk104.h" | |
7 | ||
8f0649b5 BS |
8 | struct gk104_fifo_chan { |
9 | struct nvkm_fifo_chan base; | |
10 | struct gk104_fifo *fifo; | |
69aa40e2 | 11 | int runl; |
8f0649b5 BS |
12 | |
13 | struct list_head head; | |
14 | bool killed; | |
15 | ||
9a65a38c BS |
16 | struct nvkm_gpuobj *pgd; |
17 | struct nvkm_vm *vm; | |
9a65a38c | 18 | |
8f0649b5 BS |
19 | struct { |
20 | struct nvkm_gpuobj *inst; | |
21 | struct nvkm_vma vma; | |
68f3f702 | 22 | } engn[NVKM_SUBDEV_NR]; |
9a65a38c BS |
23 | }; |
24 | ||
8f0649b5 BS |
25 | int gk104_fifo_gpfifo_new(struct nvkm_fifo *, const struct nvkm_oclass *, |
26 | void *data, u32 size, struct nvkm_object **); | |
9a65a38c | 27 | |
8f0649b5 | 28 | extern const struct nvkm_fifo_chan_oclass gk104_fifo_gpfifo_oclass; |
63f8c9b7 | 29 | extern const struct nvkm_fifo_chan_oclass gk110_fifo_gpfifo_oclass; |
db1eb528 | 30 | extern const struct nvkm_fifo_chan_oclass gm200_fifo_gpfifo_oclass; |
e8ff9794 | 31 | extern const struct nvkm_fifo_chan_oclass gp100_fifo_gpfifo_oclass; |
9a65a38c | 32 | #endif |