Add the rt linux 4.1.3-rt3 as base
[kvmfornfv.git] / kernel / drivers / gpu / drm / nouveau / nvkm / engine / fifo / nv50.h
1 #ifndef __NV50_FIFO_H__
2 #define __NV50_FIFO_H__
3 #include <engine/fifo.h>
4
5 struct nv50_fifo_priv {
6         struct nvkm_fifo base;
7         struct nvkm_gpuobj *playlist[2];
8         int cur_playlist;
9 };
10
11 struct nv50_fifo_base {
12         struct nvkm_fifo_base base;
13         struct nvkm_gpuobj *ramfc;
14         struct nvkm_gpuobj *cache;
15         struct nvkm_gpuobj *eng;
16         struct nvkm_gpuobj *pgd;
17         struct nvkm_vm *vm;
18 };
19
20 struct nv50_fifo_chan {
21         struct nvkm_fifo_chan base;
22         u32 subc[8];
23         struct nvkm_ramht *ramht;
24 };
25
26 void nv50_fifo_playlist_update(struct nv50_fifo_priv *);
27
28 void nv50_fifo_object_detach(struct nvkm_object *, int);
29 void nv50_fifo_chan_dtor(struct nvkm_object *);
30 int  nv50_fifo_chan_fini(struct nvkm_object *, bool);
31
32 void nv50_fifo_context_dtor(struct nvkm_object *);
33
34 void nv50_fifo_dtor(struct nvkm_object *);
35 int  nv50_fifo_init(struct nvkm_object *);
36 #endif