summaryrefslogtreecommitdiff
path: root/drm/nouveau/include
diff options
context:
space:
mode:
authorBen Skeggs <bskeggs@redhat.com>2015-08-20 14:54:21 +1000
committerBen Skeggs <bskeggs@redhat.com>2015-08-28 12:37:43 +1000
commitae77f90e783a3ab36fe210de9a6515173bfae21b (patch)
tree48a0c8a9a609895b17a068ef30672a12bab1996d /drm/nouveau/include
parentfede97e41306d326b2d74084d8a77fc9c60bbb9a (diff)
downloadnouveau-ae77f90e783a3ab36fe210de9a6515173bfae21b.tar.gz
dma: convert to new-style nvkm_engine
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Diffstat (limited to 'drm/nouveau/include')
-rw-r--r--drm/nouveau/include/nvif/class.h10
-rw-r--r--drm/nouveau/include/nvkm/engine/dma.h15
2 files changed, 10 insertions, 15 deletions
diff --git a/drm/nouveau/include/nvif/class.h b/drm/nouveau/include/nvif/class.h
index 1b85ffe62..95a64d895 100644
--- a/drm/nouveau/include/nvif/class.h
+++ b/drm/nouveau/include/nvif/class.h
@@ -251,13 +251,13 @@ struct gf100_dma_v0 {
__u8 pad03[5];
};
-struct gf110_dma_v0 {
+struct gf119_dma_v0 {
__u8 version;
-#define GF110_DMA_V0_PAGE_LP 0x00
-#define GF110_DMA_V0_PAGE_SP 0x01
+#define GF119_DMA_V0_PAGE_LP 0x00
+#define GF119_DMA_V0_PAGE_SP 0x01
__u8 page;
-#define GF110_DMA_V0_KIND_PITCH 0x00
-#define GF110_DMA_V0_KIND_VM 0xff
+#define GF119_DMA_V0_KIND_PITCH 0x00
+#define GF119_DMA_V0_KIND_VM 0xff
__u8 kind;
__u8 pad03[5];
};
diff --git a/drm/nouveau/include/nvkm/engine/dma.h b/drm/nouveau/include/nvkm/engine/dma.h
index 7439a02bf..114bfb737 100644
--- a/drm/nouveau/include/nvkm/engine/dma.h
+++ b/drm/nouveau/include/nvkm/engine/dma.h
@@ -2,7 +2,6 @@
#define __NVKM_DMA_H__
#include <core/engine.h>
struct nvkm_client;
-struct nvkm_gpuobj;
struct nvkm_dmaobj {
const struct nvkm_dmaobj_func *func;
@@ -18,20 +17,16 @@ struct nvkm_dmaobj {
u64 handle; /*XXX HANDLE MERGE */
};
-struct nvkm_dmaobj_func {
- int (*bind)(struct nvkm_dmaobj *, struct nvkm_gpuobj *, int align,
- struct nvkm_gpuobj **);
-};
-
struct nvkm_dma {
+ const struct nvkm_dma_func *func;
struct nvkm_engine engine;
};
struct nvkm_dmaobj *
nvkm_dma_search(struct nvkm_dma *, struct nvkm_client *, u64 object);
-extern struct nvkm_oclass *nv04_dmaeng_oclass;
-extern struct nvkm_oclass *nv50_dmaeng_oclass;
-extern struct nvkm_oclass *gf100_dmaeng_oclass;
-extern struct nvkm_oclass *gf110_dmaeng_oclass;
+int nv04_dma_new(struct nvkm_device *, int, struct nvkm_dma **);
+int nv50_dma_new(struct nvkm_device *, int, struct nvkm_dma **);
+int gf100_dma_new(struct nvkm_device *, int, struct nvkm_dma **);
+int gf119_dma_new(struct nvkm_device *, int, struct nvkm_dma **);
#endif