1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef __NVKM_DMA_USER_H__
3 #define __NVKM_DMA_USER_H__
4 #define nvkm_dmaobj(p) container_of((p), struct nvkm_dmaobj, object)
5 #include "priv.h"
6 
7 int nvkm_dmaobj_ctor(const struct nvkm_dmaobj_func *, struct nvkm_dma *,
8 		     const struct nvkm_oclass *, void **data, u32 *size,
9 		     struct nvkm_dmaobj *);
10 
11 int nv04_dmaobj_new(struct nvkm_dma *, const struct nvkm_oclass *, void *, u32,
12 		    struct nvkm_dmaobj **);
13 int nv50_dmaobj_new(struct nvkm_dma *, const struct nvkm_oclass *, void *, u32,
14 		    struct nvkm_dmaobj **);
15 int gf100_dmaobj_new(struct nvkm_dma *, const struct nvkm_oclass *, void *, u32,
16 		     struct nvkm_dmaobj **);
17 int gf119_dmaobj_new(struct nvkm_dma *, const struct nvkm_oclass *, void *, u32,
18 		     struct nvkm_dmaobj **);
19 int gv100_dmaobj_new(struct nvkm_dma *, const struct nvkm_oclass *, void *, u32,
20 		     struct nvkm_dmaobj **);
21 #endif
22