1 #ifndef __NV50_FIFO_H__ 2 #define __NV50_FIFO_H__ 3 4 struct nv50_fifo_priv { 5 struct nouveau_fifo base; 6 struct nouveau_gpuobj *playlist[2]; 7 int cur_playlist; 8 }; 9 10 struct nv50_fifo_base { 11 struct nouveau_fifo_base base; 12 struct nouveau_gpuobj *ramfc; 13 struct nouveau_gpuobj *cache; 14 struct nouveau_gpuobj *eng; 15 struct nouveau_gpuobj *pgd; 16 struct nouveau_vm *vm; 17 }; 18 19 struct nv50_fifo_chan { 20 struct nouveau_fifo_chan base; 21 u32 subc[8]; 22 struct nouveau_ramht *ramht; 23 }; 24 25 void nv50_fifo_playlist_update(struct nv50_fifo_priv *); 26 27 void nv50_fifo_object_detach(struct nouveau_object *, int); 28 void nv50_fifo_chan_dtor(struct nouveau_object *); 29 int nv50_fifo_chan_fini(struct nouveau_object *, bool); 30 31 void nv50_fifo_context_dtor(struct nouveau_object *); 32 33 void nv50_fifo_dtor(struct nouveau_object *); 34 int nv50_fifo_init(struct nouveau_object *); 35 36 #endif 37