1 #ifndef __GF100_FIFO_H__
2 #define __GF100_FIFO_H__
3 #define gf100_fifo(p) container_of((p), struct gf100_fifo, base)
4 #include "priv.h"
5 
6 #include <subdev/mmu.h>
7 
8 struct gf100_fifo {
9 	struct nvkm_fifo base;
10 
11 	struct list_head chan;
12 
13 	struct work_struct fault;
14 	u64 mask;
15 
16 	struct {
17 		struct nvkm_memory *mem[2];
18 		int active;
19 		wait_queue_head_t wait;
20 	} runlist;
21 
22 	struct {
23 		struct nvkm_memory *mem;
24 		struct nvkm_vma bar;
25 	} user;
26 	int spoon_nr;
27 };
28 
29 void gf100_fifo_intr_engine(struct gf100_fifo *);
30 void gf100_fifo_runlist_update(struct gf100_fifo *);
31 #endif
32