These changes are the raw update to linux-4.4.6-rt14. Kernel sources
[kvmfornfv.git] / kernel / drivers / gpu / drm / nouveau / nvkm / engine / fifo / nv50.h
index 09ed93c..8ab5394 100644 (file)
@@ -1,36 +1,19 @@
 #ifndef __NV50_FIFO_H__
 #define __NV50_FIFO_H__
-#include <engine/fifo.h>
+#define nv50_fifo(p) container_of((p), struct nv50_fifo, base)
+#include "priv.h"
 
-struct nv50_fifo_priv {
+struct nv50_fifo {
        struct nvkm_fifo base;
-       struct nvkm_gpuobj *playlist[2];
-       int cur_playlist;
+       struct nvkm_memory *runlist[2];
+       int cur_runlist;
 };
 
-struct nv50_fifo_base {
-       struct nvkm_fifo_base base;
-       struct nvkm_gpuobj *ramfc;
-       struct nvkm_gpuobj *cache;
-       struct nvkm_gpuobj *eng;
-       struct nvkm_gpuobj *pgd;
-       struct nvkm_vm *vm;
-};
-
-struct nv50_fifo_chan {
-       struct nvkm_fifo_chan base;
-       u32 subc[8];
-       struct nvkm_ramht *ramht;
-};
-
-void nv50_fifo_playlist_update(struct nv50_fifo_priv *);
-
-void nv50_fifo_object_detach(struct nvkm_object *, int);
-void nv50_fifo_chan_dtor(struct nvkm_object *);
-int  nv50_fifo_chan_fini(struct nvkm_object *, bool);
-
-void nv50_fifo_context_dtor(struct nvkm_object *);
+int nv50_fifo_new_(const struct nvkm_fifo_func *, struct nvkm_device *,
+                  int index, struct nvkm_fifo **);
 
-void nv50_fifo_dtor(struct nvkm_object *);
-int  nv50_fifo_init(struct nvkm_object *);
+void *nv50_fifo_dtor(struct nvkm_fifo *);
+int nv50_fifo_oneinit(struct nvkm_fifo *);
+void nv50_fifo_init(struct nvkm_fifo *);
+void nv50_fifo_runlist_update(struct nv50_fifo *);
 #endif