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 8struct gf100_fifo_chan; 9struct gf100_fifo { 10 struct nvkm_fifo base; 11 12 struct list_head chan; 13 14 struct { 15 struct work_struct work; 16 u64 mask; 17 } recover; 18 19 int pbdma_nr; 20 21 struct { 22 struct nvkm_memory *mem[2]; 23 int active; 24 wait_queue_head_t wait; 25 } runlist; 26 27 struct { 28 struct nvkm_memory *mem; 29 struct nvkm_vma bar; 30 } user; 31}; 32 33void gf100_fifo_intr_engine(struct gf100_fifo *); 34void gf100_fifo_runlist_insert(struct gf100_fifo *, struct gf100_fifo_chan *); 35void gf100_fifo_runlist_remove(struct gf100_fifo *, struct gf100_fifo_chan *); 36void gf100_fifo_runlist_commit(struct gf100_fifo *); 37#endif 38