1#ifndef __NVKM_DMAOBJ_H__ 2#define __NVKM_DMAOBJ_H__ 3#include <core/engine.h> 4struct nvkm_gpuobj; 5 6struct nvkm_dmaobj { 7 struct nvkm_object base; 8 u32 target; 9 u32 access; 10 u64 start; 11 u64 limit; 12}; 13 14struct nvkm_dmaeng { 15 struct nvkm_engine base; 16 17 /* creates a "physical" dma object from a struct nvkm_dmaobj */ 18 int (*bind)(struct nvkm_dmaobj *dmaobj, struct nvkm_object *parent, 19 struct nvkm_gpuobj **); 20}; 21 22extern struct nvkm_oclass *nv04_dmaeng_oclass; 23extern struct nvkm_oclass *nv50_dmaeng_oclass; 24extern struct nvkm_oclass *gf100_dmaeng_oclass; 25extern struct nvkm_oclass *gf110_dmaeng_oclass; 26#endif 27