Home
last modified time | relevance | path

Searched refs:uvmm (Results 1 - 13 of 13) sorted by relevance

/kernel/linux/linux-6.6/drivers/gpu/drm/nouveau/nvkm/subdev/mmu/
H A Duvmm.c22 #include "uvmm.h"
46 nvkm_uvmm_mthd_pfnclr(struct nvkm_uvmm *uvmm, void *argv, u32 argc) in nvkm_uvmm_mthd_pfnclr() argument
51 struct nvkm_vmm *vmm = uvmm->vmm; in nvkm_uvmm_mthd_pfnclr()
74 nvkm_uvmm_mthd_pfnmap(struct nvkm_uvmm *uvmm, void *argv, u32 argc) in nvkm_uvmm_mthd_pfnmap() argument
79 struct nvkm_vmm *vmm = uvmm->vmm; in nvkm_uvmm_mthd_pfnmap()
107 nvkm_uvmm_mthd_unmap(struct nvkm_uvmm *uvmm, void *argv, u32 argc) in nvkm_uvmm_mthd_unmap() argument
112 struct nvkm_vmm *vmm = uvmm->vmm; in nvkm_uvmm_mthd_unmap()
151 nvkm_uvmm_mthd_map(struct nvkm_uvmm *uvmm, void *argv, u32 argc) in nvkm_uvmm_mthd_map() argument
153 struct nvkm_client *client = uvmm->object.client; in nvkm_uvmm_mthd_map()
158 struct nvkm_vmm *vmm = uvmm in nvkm_uvmm_mthd_map()
232 nvkm_uvmm_mthd_put(struct nvkm_uvmm *uvmm, void *argv, u32 argc) nvkm_uvmm_mthd_put() argument
268 nvkm_uvmm_mthd_get(struct nvkm_uvmm *uvmm, void *argv, u32 argc) nvkm_uvmm_mthd_get() argument
302 nvkm_uvmm_mthd_page(struct nvkm_uvmm *uvmm, void *argv, u32 argc) nvkm_uvmm_mthd_page() argument
330 nvkm_uvmm_page_index(struct nvkm_uvmm *uvmm, u64 size, u8 shift, u8 *refd) nvkm_uvmm_page_index() argument
354 nvkm_uvmm_mthd_raw_get(struct nvkm_uvmm *uvmm, struct nvif_vmm_raw_v0 *args) nvkm_uvmm_mthd_raw_get() argument
371 nvkm_uvmm_mthd_raw_put(struct nvkm_uvmm *uvmm, struct nvif_vmm_raw_v0 *args) nvkm_uvmm_mthd_raw_put() argument
390 nvkm_uvmm_mthd_raw_map(struct nvkm_uvmm *uvmm, struct nvif_vmm_raw_v0 *args) nvkm_uvmm_mthd_raw_map() argument
431 nvkm_uvmm_mthd_raw_unmap(struct nvkm_uvmm *uvmm, struct nvif_vmm_raw_v0 *args) nvkm_uvmm_mthd_raw_unmap() argument
451 nvkm_uvmm_mthd_raw_sparse(struct nvkm_uvmm *uvmm, struct nvif_vmm_raw_v0 *args) nvkm_uvmm_mthd_raw_sparse() argument
462 nvkm_uvmm_mthd_raw(struct nvkm_uvmm *uvmm, void *argv, u32 argc) nvkm_uvmm_mthd_raw() argument
494 struct nvkm_uvmm *uvmm = nvkm_uvmm(object); nvkm_uvmm_mthd() local
520 struct nvkm_uvmm *uvmm = nvkm_uvmm(object); nvkm_uvmm_dtor() local
541 struct nvkm_uvmm *uvmm; nvkm_uvmm_new() local
[all...]
H A Dmemnv50.c37 struct nv50_vmm_map_v0 uvmm = {}; in nv50_mem_map() local
48 uvmm.ro = args->v0.ro; in nv50_mem_map()
49 uvmm.kind = args->v0.kind; in nv50_mem_map()
50 uvmm.comp = args->v0.comp; in nv50_mem_map()
62 return nvkm_memory_map(memory, 0, bar, *pvma, &uvmm, sizeof(uvmm)); in nv50_mem_map()
H A Dmemgf100.c37 struct gf100_vmm_map_v0 uvmm = {}; in gf100_mem_map() local
47 uvmm.ro = args->v0.ro; in gf100_mem_map()
48 uvmm.kind = args->v0.kind; in gf100_mem_map()
59 ret = nvkm_memory_map(memory, 0, bar, *pvma, &uvmm, sizeof(uvmm)); in gf100_mem_map()
/kernel/linux/linux-5.10/drivers/gpu/drm/nouveau/nvkm/subdev/mmu/
H A Duvmm.c22 #include "uvmm.h"
46 nvkm_uvmm_mthd_pfnclr(struct nvkm_uvmm *uvmm, void *argv, u32 argc) in nvkm_uvmm_mthd_pfnclr() argument
48 struct nvkm_client *client = uvmm->object.client; in nvkm_uvmm_mthd_pfnclr()
52 struct nvkm_vmm *vmm = uvmm->vmm; in nvkm_uvmm_mthd_pfnclr()
75 nvkm_uvmm_mthd_pfnmap(struct nvkm_uvmm *uvmm, void *argv, u32 argc) in nvkm_uvmm_mthd_pfnmap() argument
77 struct nvkm_client *client = uvmm->object.client; in nvkm_uvmm_mthd_pfnmap()
81 struct nvkm_vmm *vmm = uvmm->vmm; in nvkm_uvmm_mthd_pfnmap()
109 nvkm_uvmm_mthd_unmap(struct nvkm_uvmm *uvmm, void *argv, u32 argc) in nvkm_uvmm_mthd_unmap() argument
111 struct nvkm_client *client = uvmm->object.client; in nvkm_uvmm_mthd_unmap()
115 struct nvkm_vmm *vmm = uvmm in nvkm_uvmm_mthd_unmap()
152 nvkm_uvmm_mthd_map(struct nvkm_uvmm *uvmm, void *argv, u32 argc) nvkm_uvmm_mthd_map() argument
231 nvkm_uvmm_mthd_put(struct nvkm_uvmm *uvmm, void *argv, u32 argc) nvkm_uvmm_mthd_put() argument
269 nvkm_uvmm_mthd_get(struct nvkm_uvmm *uvmm, void *argv, u32 argc) nvkm_uvmm_mthd_get() argument
305 nvkm_uvmm_mthd_page(struct nvkm_uvmm *uvmm, void *argv, u32 argc) nvkm_uvmm_mthd_page() argument
335 struct nvkm_uvmm *uvmm = nvkm_uvmm(object); nvkm_uvmm_mthd() local
360 struct nvkm_uvmm *uvmm = nvkm_uvmm(object); nvkm_uvmm_dtor() local
381 struct nvkm_uvmm *uvmm; nvkm_uvmm_new() local
[all...]
H A Dmemnv50.c37 struct nv50_vmm_map_v0 uvmm = {}; in nv50_mem_map() local
48 uvmm.ro = args->v0.ro; in nv50_mem_map()
49 uvmm.kind = args->v0.kind; in nv50_mem_map()
50 uvmm.comp = args->v0.comp; in nv50_mem_map()
62 return nvkm_memory_map(memory, 0, bar, *pvma, &uvmm, sizeof(uvmm)); in nv50_mem_map()
H A Dmemgf100.c37 struct gf100_vmm_map_v0 uvmm = {}; in gf100_mem_map() local
47 uvmm.ro = args->v0.ro; in gf100_mem_map()
48 uvmm.kind = args->v0.kind; in gf100_mem_map()
59 ret = nvkm_memory_map(memory, 0, bar, *pvma, &uvmm, sizeof(uvmm)); in gf100_mem_map()
/kernel/linux/linux-6.6/drivers/gpu/drm/nouveau/
H A Dnouveau_uvmm.c6 * The uvmm mutex protects any operations on the GPU VA space provided by the
89 nouveau_uvmm_vmm_sparse_ref(struct nouveau_uvmm *uvmm, in nouveau_uvmm_vmm_sparse_ref() argument
92 struct nvif_vmm *vmm = &uvmm->vmm.vmm; in nouveau_uvmm_vmm_sparse_ref()
98 nouveau_uvmm_vmm_sparse_unref(struct nouveau_uvmm *uvmm, in nouveau_uvmm_vmm_sparse_unref() argument
101 struct nvif_vmm *vmm = &uvmm->vmm.vmm; in nouveau_uvmm_vmm_sparse_unref()
107 nouveau_uvmm_vmm_get(struct nouveau_uvmm *uvmm, in nouveau_uvmm_vmm_get() argument
110 struct nvif_vmm *vmm = &uvmm->vmm.vmm; in nouveau_uvmm_vmm_get()
116 nouveau_uvmm_vmm_put(struct nouveau_uvmm *uvmm, in nouveau_uvmm_vmm_put() argument
119 struct nvif_vmm *vmm = &uvmm->vmm.vmm; in nouveau_uvmm_vmm_put()
125 nouveau_uvmm_vmm_unmap(struct nouveau_uvmm *uvmm, in nouveau_uvmm_vmm_unmap() argument
134 nouveau_uvmm_vmm_map(struct nouveau_uvmm *uvmm, u64 addr, u64 range, u64 bo_offset, u8 kind, struct nouveau_mem *mem) nouveau_uvmm_vmm_map() argument
274 __nouveau_uvma_region_insert(struct nouveau_uvmm *uvmm, struct nouveau_uvma_region *reg) __nouveau_uvma_region_insert() argument
299 nouveau_uvma_region_insert(struct nouveau_uvmm *uvmm, struct nouveau_uvma_region *reg, u64 addr, u64 range) nouveau_uvma_region_insert() argument
319 struct nouveau_uvmm *uvmm = reg->uvmm; nouveau_uvma_region_remove() local
326 nouveau_uvma_region_create(struct nouveau_uvmm *uvmm, u64 addr, u64 range) nouveau_uvma_region_create() argument
357 nouveau_uvma_region_find_first(struct nouveau_uvmm *uvmm, u64 addr, u64 range) nouveau_uvma_region_find_first() argument
366 nouveau_uvma_region_find(struct nouveau_uvmm *uvmm, u64 addr, u64 range) nouveau_uvma_region_find() argument
385 struct nouveau_uvmm *uvmm = reg->uvmm; nouveau_uvma_region_empty() local
395 struct nouveau_uvmm *uvmm = reg->uvmm; __nouveau_uvma_region_destroy() local
410 nouveau_uvma_region_destroy(struct nouveau_uvmm *uvmm, u64 addr, u64 range) nouveau_uvma_region_destroy() argument
451 nouveau_uvmm_sm_prepare_unwind(struct nouveau_uvmm *uvmm, struct nouveau_uvma_prealloc *new, struct drm_gpuva_ops *ops, struct drm_gpuva_op *last, struct uvmm_map_args *args) nouveau_uvmm_sm_prepare_unwind() argument
552 nouveau_uvmm_sm_map_prepare_unwind(struct nouveau_uvmm *uvmm, struct nouveau_uvma_prealloc *new, struct drm_gpuva_ops *ops, u64 addr, u64 range) nouveau_uvmm_sm_map_prepare_unwind() argument
567 nouveau_uvmm_sm_unmap_prepare_unwind(struct nouveau_uvmm *uvmm, struct nouveau_uvma_prealloc *new, struct drm_gpuva_ops *ops) nouveau_uvmm_sm_unmap_prepare_unwind() argument
577 op_map_prepare(struct nouveau_uvmm *uvmm, struct nouveau_uvma **puvma, struct drm_gpuva_op_map *op, struct uvmm_map_args *args) op_map_prepare() argument
608 nouveau_uvmm_sm_prepare(struct nouveau_uvmm *uvmm, struct nouveau_uvma_prealloc *new, struct drm_gpuva_ops *ops, struct uvmm_map_args *args) nouveau_uvmm_sm_prepare() argument
726 nouveau_uvmm_sm_map_prepare(struct nouveau_uvmm *uvmm, struct nouveau_uvma_prealloc *new, struct nouveau_uvma_region *region, struct drm_gpuva_ops *ops, u64 addr, u64 range, u8 kind) nouveau_uvmm_sm_map_prepare() argument
743 nouveau_uvmm_sm_unmap_prepare(struct nouveau_uvmm *uvmm, struct nouveau_uvma_prealloc *new, struct drm_gpuva_ops *ops) nouveau_uvmm_sm_unmap_prepare() argument
819 nouveau_uvmm_sm(struct nouveau_uvmm *uvmm, struct nouveau_uvma_prealloc *new, struct drm_gpuva_ops *ops) nouveau_uvmm_sm() argument
845 nouveau_uvmm_sm_map(struct nouveau_uvmm *uvmm, struct nouveau_uvma_prealloc *new, struct drm_gpuva_ops *ops) nouveau_uvmm_sm_map() argument
853 nouveau_uvmm_sm_unmap(struct nouveau_uvmm *uvmm, struct nouveau_uvma_prealloc *new, struct drm_gpuva_ops *ops) nouveau_uvmm_sm_unmap() argument
861 nouveau_uvmm_sm_cleanup(struct nouveau_uvmm *uvmm, struct nouveau_uvma_prealloc *new, struct drm_gpuva_ops *ops, bool unmap) nouveau_uvmm_sm_cleanup() argument
914 nouveau_uvmm_sm_map_cleanup(struct nouveau_uvmm *uvmm, struct nouveau_uvma_prealloc *new, struct drm_gpuva_ops *ops) nouveau_uvmm_sm_map_cleanup() argument
922 nouveau_uvmm_sm_unmap_cleanup(struct nouveau_uvmm *uvmm, struct nouveau_uvma_prealloc *new, struct drm_gpuva_ops *ops) nouveau_uvmm_sm_unmap_cleanup() argument
930 nouveau_uvmm_validate_range(struct nouveau_uvmm *uvmm, u64 addr, u64 range) nouveau_uvmm_validate_range() argument
994 struct nouveau_uvmm *uvmm = nouveau_cli_uvmm(job->cli); bind_validate_op() local
1044 struct nouveau_uvmm *uvmm = nouveau_cli_uvmm(job->cli); bind_validate_map_common() local
1144 struct nouveau_uvmm *uvmm = nouveau_cli_uvmm(job->cli); nouveau_uvmm_bind_job_submit() local
1434 struct nouveau_uvmm *uvmm = nouveau_cli_uvmm(job->cli); nouveau_uvmm_bind_job_run() local
1470 struct nouveau_uvmm *uvmm = nouveau_cli_uvmm(job->cli); nouveau_uvmm_bind_job_free_work_fn() local
1808 nouveau_uvmm_init(struct nouveau_uvmm *uvmm, struct nouveau_cli *cli, u64 kernel_managed_addr, u64 kernel_managed_size) nouveau_uvmm_init() argument
1865 nouveau_uvmm_fini(struct nouveau_uvmm *uvmm) nouveau_uvmm_fini() argument
[all...]
H A Dnouveau_uvmm.h24 struct nouveau_uvmm *uvmm; member
85 int nouveau_uvmm_init(struct nouveau_uvmm *uvmm, struct nouveau_cli *cli,
87 void nouveau_uvmm_fini(struct nouveau_uvmm *uvmm);
98 static inline void nouveau_uvmm_lock(struct nouveau_uvmm *uvmm) in nouveau_uvmm_lock() argument
100 mutex_lock(&uvmm->mutex); in nouveau_uvmm_lock()
103 static inline void nouveau_uvmm_unlock(struct nouveau_uvmm *uvmm) in nouveau_uvmm_unlock() argument
105 mutex_unlock(&uvmm->mutex); in nouveau_uvmm_unlock()
H A Dnouveau_drv.h96 struct nouveau_uvmm uvmm; member
124 if (!cli || !cli->uvmm.vmm.cli) in nouveau_cli_uvmm()
127 return &cli->uvmm; in nouveau_cli_uvmm()
133 struct nouveau_uvmm *uvmm; in nouveau_cli_uvmm_locked() local
136 uvmm = nouveau_cli_uvmm(cli); in nouveau_cli_uvmm_locked()
139 return uvmm; in nouveau_cli_uvmm_locked()
145 struct nouveau_uvmm *uvmm; in nouveau_cli_vmm() local
147 uvmm = nouveau_cli_uvmm(cli); in nouveau_cli_vmm()
148 if (uvmm) in nouveau_cli_vmm()
149 return &uvmm in nouveau_cli_vmm()
160 struct nouveau_uvmm *uvmm = nouveau_cli_uvmm(cli); __nouveau_cli_disable_uvmm_noinit() local
[all...]
H A Dnouveau_debugfs.c207 nouveau_debugfs_gpuva_regions(struct seq_file *m, struct nouveau_uvmm *uvmm) in nouveau_debugfs_gpuva_regions() argument
209 MA_STATE(mas, &uvmm->region_mt, 0, 0); in nouveau_debugfs_gpuva_regions()
228 struct nouveau_uvmm *uvmm = nouveau_cli_uvmm(cli); in nouveau_debugfs_gpuva() local
230 if (!uvmm) in nouveau_debugfs_gpuva()
233 nouveau_uvmm_lock(uvmm); in nouveau_debugfs_gpuva()
234 drm_debugfs_gpuva_info(m, &uvmm->umgr); in nouveau_debugfs_gpuva()
236 nouveau_debugfs_gpuva_regions(m, uvmm); in nouveau_debugfs_gpuva()
237 nouveau_uvmm_unlock(uvmm); in nouveau_debugfs_gpuva()
H A Dnouveau_exec.c93 struct nouveau_uvmm *uvmm = nouveau_cli_uvmm(cli); in nouveau_exec_job_submit() local
104 nouveau_uvmm_lock(uvmm); in nouveau_exec_job_submit()
110 drm_gpuva_for_each_va(va, &uvmm->umgr) { in nouveau_exec_job_submit()
111 if (unlikely(va == &uvmm->umgr.kernel_alloc_node)) in nouveau_exec_job_submit()
120 nouveau_uvmm_unlock(uvmm); in nouveau_exec_job_submit()
133 nouveau_uvmm_unlock(uvmm); in nouveau_exec_job_submit()
H A Dnouveau_gem.c106 struct nouveau_uvmm *uvmm = nouveau_cli_uvmm(cli); in nouveau_gem_object_open() local
114 if (nvbo->no_share && uvmm && &uvmm->resv != nvbo->bo.base.resv) in nouveau_gem_object_open()
239 struct nouveau_uvmm *uvmm = nouveau_cli_uvmm(cli); in nouveau_gem_new() local
245 if (unlikely(!uvmm)) in nouveau_gem_new()
248 resv = &uvmm->resv; in nouveau_gem_new()
344 /* If uvmm wasn't initialized until now disable it completely to prevent in nouveau_gem_ioctl_new()
H A Dnouveau_drm.c202 nouveau_uvmm_fini(&cli->uvmm); in nouveau_cli_fini()

Completed in 15 milliseconds