Lines Matching refs:vmm
28 nvif_vmm_unmap(struct nvif_vmm *vmm, u64 addr) in nvif_vmm_unmap() argument
30 return nvif_object_mthd(&vmm->object, NVIF_VMM_V0_UNMAP, in nvif_vmm_unmap()
36 nvif_vmm_map(struct nvif_vmm *vmm, u64 addr, u64 size, void *argv, u32 argc, in nvif_vmm_map() argument
57 ret = nvif_object_mthd(&vmm->object, NVIF_VMM_V0_MAP, in nvif_vmm_map()
65 nvif_vmm_put(struct nvif_vmm *vmm, struct nvif_vma *vma) in nvif_vmm_put() argument
68 WARN_ON(nvif_object_mthd(&vmm->object, NVIF_VMM_V0_PUT, in nvif_vmm_put()
77 nvif_vmm_get(struct nvif_vmm *vmm, enum nvif_vmm_get type, bool sparse, in nvif_vmm_get() argument
98 ret = nvif_object_mthd(&vmm->object, NVIF_VMM_V0_GET, in nvif_vmm_get()
108 nvif_vmm_dtor(struct nvif_vmm *vmm) in nvif_vmm_dtor() argument
110 kfree(vmm->page); in nvif_vmm_dtor()
111 nvif_object_dtor(&vmm->object); in nvif_vmm_dtor()
116 u64 addr, u64 size, void *argv, u32 argc, struct nvif_vmm *vmm) in nvif_vmm_ctor() argument
122 vmm->object.client = NULL; in nvif_vmm_ctor()
123 vmm->page = NULL; in nvif_vmm_ctor()
134 oclass, args, argn, &vmm->object); in nvif_vmm_ctor()
138 vmm->start = args->addr; in nvif_vmm_ctor()
139 vmm->limit = args->size; in nvif_vmm_ctor()
141 vmm->page_nr = args->page_nr; in nvif_vmm_ctor()
142 vmm->page = kmalloc_array(vmm->page_nr, sizeof(*vmm->page), in nvif_vmm_ctor()
144 if (!vmm->page) { in nvif_vmm_ctor()
149 for (i = 0; i < vmm->page_nr; i++) { in nvif_vmm_ctor()
152 ret = nvif_object_mthd(&vmm->object, NVIF_VMM_V0_PAGE, in nvif_vmm_ctor()
157 vmm->page[i].shift = args.shift; in nvif_vmm_ctor()
158 vmm->page[i].sparse = args.sparse; in nvif_vmm_ctor()
159 vmm->page[i].vram = args.vram; in nvif_vmm_ctor()
160 vmm->page[i].host = args.host; in nvif_vmm_ctor()
161 vmm->page[i].comp = args.comp; in nvif_vmm_ctor()
166 nvif_vmm_dtor(vmm); in nvif_vmm_ctor()