Home
last modified time | relevance | path

Searched refs:vmm (Results 1 - 25 of 190) sorted by relevance

12345678

/kernel/linux/linux-6.6/drivers/gpu/drm/nouveau/nvkm/subdev/mmu/
H A Duvmm.c42 return nvkm_vmm_ref(nvkm_uvmm(object)->vmm); in nvkm_uvmm_search()
51 struct nvkm_vmm *vmm = uvmm->vmm; in nvkm_uvmm_mthd_pfnclr() local
61 if (nvkm_vmm_in_managed_range(vmm, addr, size) && vmm->managed.raw) in nvkm_uvmm_mthd_pfnclr()
65 mutex_lock(&vmm->mutex.vmm); in nvkm_uvmm_mthd_pfnclr()
66 ret = nvkm_vmm_pfn_unmap(vmm, addr, size); in nvkm_uvmm_mthd_pfnclr()
67 mutex_unlock(&vmm->mutex.vmm); in nvkm_uvmm_mthd_pfnclr()
79 struct nvkm_vmm *vmm = uvmm->vmm; nvkm_uvmm_mthd_pfnmap() local
112 struct nvkm_vmm *vmm = uvmm->vmm; nvkm_uvmm_mthd_unmap() local
158 struct nvkm_vmm *vmm = uvmm->vmm; nvkm_uvmm_mthd_map() local
237 struct nvkm_vmm *vmm = uvmm->vmm; nvkm_uvmm_mthd_put() local
273 struct nvkm_vmm *vmm = uvmm->vmm; nvkm_uvmm_mthd_get() local
332 struct nvkm_vmm *vmm = uvmm->vmm; nvkm_uvmm_page_index() local
356 struct nvkm_vmm *vmm = uvmm->vmm; nvkm_uvmm_mthd_raw_get() local
373 struct nvkm_vmm *vmm = uvmm->vmm; nvkm_uvmm_mthd_raw_put() local
393 struct nvkm_vmm *vmm = uvmm->vmm; nvkm_uvmm_mthd_raw_map() local
433 struct nvkm_vmm *vmm = uvmm->vmm; nvkm_uvmm_mthd_raw_unmap() local
453 struct nvkm_vmm *vmm = uvmm->vmm; nvkm_uvmm_mthd_raw_sparse() local
[all...]
H A Dvmm.c23 #include "vmm.h"
75 struct nvkm_vmm *vmm; member
113 VMM_TRACE(_it->vmm, "%s "f, _buf, ##a); \
129 if (it->vmm->func->flush) { in nvkm_vmm_flush()
131 it->vmm->func->flush(it->vmm, it->flush); in nvkm_vmm_flush()
145 struct nvkm_vmm *vmm = it->vmm; in nvkm_vmm_unref_pdes() local
159 func->sparse(vmm, pgd->pt[0], pdei, 1); in nvkm_vmm_unref_pdes()
162 func->unmap(vmm, pg in nvkm_vmm_unref_pdes()
203 struct nvkm_vmm *vmm = it->vmm; nvkm_vmm_unref_sptes() local
302 struct nvkm_vmm *vmm = it->vmm; nvkm_vmm_ref_sptes() local
419 struct nvkm_vmm *vmm = it->vmm; nvkm_vmm_ref_hwpt() local
501 nvkm_vmm_iter(struct nvkm_vmm *vmm, const struct nvkm_vmm_page *page, u64 addr, u64 size, const char *name, bool ref, bool pfn, bool (*REF_PTES)(struct nvkm_vmm_iter *, bool pfn, u32, u32), nvkm_vmm_pte_func MAP_PTES, struct nvkm_vmm_map *map, nvkm_vmm_pxe_func CLR_PTES) nvkm_vmm_iter() argument
602 nvkm_vmm_ptes_sparse_put(struct nvkm_vmm *vmm, const struct nvkm_vmm_page *page, u64 addr, u64 size) nvkm_vmm_ptes_sparse_put() argument
612 nvkm_vmm_ptes_sparse_get(struct nvkm_vmm *vmm, const struct nvkm_vmm_page *page, u64 addr, u64 size) nvkm_vmm_ptes_sparse_get() argument
630 nvkm_vmm_ptes_sparse(struct nvkm_vmm *vmm, u64 addr, u64 size, bool ref) nvkm_vmm_ptes_sparse() argument
680 nvkm_vmm_ptes_unmap(struct nvkm_vmm *vmm, const struct nvkm_vmm_page *page, u64 addr, u64 size, bool sparse, bool pfn) nvkm_vmm_ptes_unmap() argument
694 nvkm_vmm_ptes_map(struct nvkm_vmm *vmm, const struct nvkm_vmm_page *page, u64 addr, u64 size, struct nvkm_vmm_map *map, nvkm_vmm_pte_func func) nvkm_vmm_ptes_map() argument
705 nvkm_vmm_ptes_put_locked(struct nvkm_vmm *vmm, const struct nvkm_vmm_page *page, u64 addr, u64 size) nvkm_vmm_ptes_put_locked() argument
713 nvkm_vmm_ptes_put(struct nvkm_vmm *vmm, const struct nvkm_vmm_page *page, u64 addr, u64 size) nvkm_vmm_ptes_put() argument
722 nvkm_vmm_ptes_get(struct nvkm_vmm *vmm, const struct nvkm_vmm_page *page, u64 addr, u64 size) nvkm_vmm_ptes_get() argument
741 __nvkm_vmm_ptes_unmap_put(struct nvkm_vmm *vmm, const struct nvkm_vmm_page *page, u64 addr, u64 size, bool sparse, bool pfn) __nvkm_vmm_ptes_unmap_put() argument
753 nvkm_vmm_ptes_unmap_put(struct nvkm_vmm *vmm, const struct nvkm_vmm_page *page, u64 addr, u64 size, bool sparse, bool pfn) nvkm_vmm_ptes_unmap_put() argument
765 __nvkm_vmm_ptes_get_map(struct nvkm_vmm *vmm, const struct nvkm_vmm_page *page, u64 addr, u64 size, struct nvkm_vmm_map *map, nvkm_vmm_pte_func func) __nvkm_vmm_ptes_get_map() argument
780 nvkm_vmm_ptes_get_map(struct nvkm_vmm *vmm, const struct nvkm_vmm_page *page, u64 addr, u64 size, struct nvkm_vmm_map *map, nvkm_vmm_pte_func func) nvkm_vmm_ptes_get_map() argument
836 nvkm_vmm_free_remove(struct nvkm_vmm *vmm, struct nvkm_vma *vma) nvkm_vmm_free_remove() argument
842 nvkm_vmm_free_delete(struct nvkm_vmm *vmm, struct nvkm_vma *vma) nvkm_vmm_free_delete() argument
850 nvkm_vmm_free_insert(struct nvkm_vmm *vmm, struct nvkm_vma *vma) nvkm_vmm_free_insert() argument
878 nvkm_vmm_node_remove(struct nvkm_vmm *vmm, struct nvkm_vma *vma) nvkm_vmm_node_remove() argument
884 nvkm_vmm_node_delete(struct nvkm_vmm *vmm, struct nvkm_vma *vma) nvkm_vmm_node_delete() argument
892 nvkm_vmm_node_insert(struct nvkm_vmm *vmm, struct nvkm_vma *vma) nvkm_vmm_node_insert() argument
914 nvkm_vmm_node_search(struct nvkm_vmm *vmm, u64 addr) nvkm_vmm_node_search() argument
934 nvkm_vmm_node_merge(struct nvkm_vmm *vmm, struct nvkm_vma *prev, struct nvkm_vma *vma, struct nvkm_vma *next, u64 size) nvkm_vmm_node_merge() argument
976 nvkm_vmm_node_split(struct nvkm_vmm *vmm, struct nvkm_vma *vma, u64 addr, u64 size) nvkm_vmm_node_split() argument
1019 nvkm_vmm_dump(struct nvkm_vmm *vmm) nvkm_vmm_dump() argument
1028 nvkm_vmm_dtor(struct nvkm_vmm *vmm) nvkm_vmm_dtor() argument
1069 nvkm_vmm_ctor_managed(struct nvkm_vmm *vmm, u64 addr, u64 size) nvkm_vmm_ctor_managed() argument
1083 nvkm_vmm_ctor(const struct nvkm_vmm_func *func, struct nvkm_mmu *mmu, u32 pd_header, bool managed, u64 addr, u64 size, struct lock_class_key *key, const char *name, struct nvkm_vmm *vmm) nvkm_vmm_ctor() argument
1208 nvkm_vmm_pfn_split_merge(struct nvkm_vmm *vmm, struct nvkm_vma *vma, u64 addr, u64 size, u8 page, bool map) nvkm_vmm_pfn_split_merge() argument
1231 nvkm_vmm_pfn_unmap(struct nvkm_vmm *vmm, u64 addr, u64 size) nvkm_vmm_pfn_unmap() argument
1267 nvkm_vmm_pfn_map(struct nvkm_vmm *vmm, u8 shift, u64 addr, u64 size, u64 *pfn) nvkm_vmm_pfn_map() argument
1390 nvkm_vmm_unmap_region(struct nvkm_vmm *vmm, struct nvkm_vma *vma) nvkm_vmm_unmap_region() argument
1407 nvkm_vmm_unmap_locked(struct nvkm_vmm *vmm, struct nvkm_vma *vma, bool pfn) nvkm_vmm_unmap_locked() argument
1422 nvkm_vmm_unmap(struct nvkm_vmm *vmm, struct nvkm_vma *vma) nvkm_vmm_unmap() argument
1432 nvkm_vmm_map_valid(struct nvkm_vmm *vmm, struct nvkm_vma *vma, void *argv, u32 argc, struct nvkm_vmm_map *map) nvkm_vmm_map_valid() argument
1468 nvkm_vmm_map_choose(struct nvkm_vmm *vmm, struct nvkm_vma *vma, void *argv, u32 argc, struct nvkm_vmm_map *map) nvkm_vmm_map_choose() argument
1480 nvkm_vmm_map_locked(struct nvkm_vmm *vmm, struct nvkm_vma *vma, void *argv, u32 argc, struct nvkm_vmm_map *map) nvkm_vmm_map_locked() argument
1568 nvkm_vmm_map(struct nvkm_vmm *vmm, struct nvkm_vma *vma, void *argv, u32 argc, struct nvkm_vmm_map *map) nvkm_vmm_map() argument
1585 nvkm_vmm_put_region(struct nvkm_vmm *vmm, struct nvkm_vma *vma) nvkm_vmm_put_region() argument
1604 nvkm_vmm_put_locked(struct nvkm_vmm *vmm, struct nvkm_vma *vma) nvkm_vmm_put_locked() argument
1686 nvkm_vmm_put(struct nvkm_vmm *vmm, struct nvkm_vma **pvma) nvkm_vmm_put() argument
1698 nvkm_vmm_get_locked(struct nvkm_vmm *vmm, bool getref, bool mapref, bool sparse, u8 shift, u8 align, u64 size, struct nvkm_vma **pvma) nvkm_vmm_get_locked() argument
1836 nvkm_vmm_get(struct nvkm_vmm *vmm, u8 page, u64 size, struct nvkm_vma **pvma) nvkm_vmm_get() argument
1846 nvkm_vmm_raw_unmap(struct nvkm_vmm *vmm, u64 addr, u64 size, bool sparse, u8 refd) nvkm_vmm_raw_unmap() argument
1855 nvkm_vmm_raw_put(struct nvkm_vmm *vmm, u64 addr, u64 size, u8 refd) nvkm_vmm_raw_put() argument
1863 nvkm_vmm_raw_get(struct nvkm_vmm *vmm, u64 addr, u64 size, u8 refd) nvkm_vmm_raw_get() argument
1874 nvkm_vmm_raw_sparse(struct nvkm_vmm *vmm, u64 addr, u64 size, bool ref) nvkm_vmm_raw_sparse() argument
1886 nvkm_vmm_part(struct nvkm_vmm *vmm, struct nvkm_memory *inst) nvkm_vmm_part() argument
1896 nvkm_vmm_join(struct nvkm_vmm *vmm, struct nvkm_memory *inst) nvkm_vmm_join() argument
1917 nvkm_vmm_boot(struct nvkm_vmm *vmm) nvkm_vmm_boot() argument
1939 struct nvkm_vmm *vmm = container_of(kref, typeof(*vmm), kref); nvkm_vmm_del() local
1947 struct nvkm_vmm *vmm = *pvmm; nvkm_vmm_unref() local
1955 nvkm_vmm_ref(struct nvkm_vmm *vmm) nvkm_vmm_ref() argument
1968 struct nvkm_vmm *vmm = NULL; nvkm_vmm_new() local
[all...]
H A Dvmmnv44.c22 #include "vmm.h"
27 nv44_vmm_pgt_fill(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, in nv44_vmm_pgt_fill() argument
39 u32 addr = (list ? *list++ : vmm->null) >> 12; in nv44_vmm_pgt_fill()
66 VMM_WO032(pt, vmm, pteo + 0x0, tmp[0]); in nv44_vmm_pgt_fill()
67 VMM_WO032(pt, vmm, pteo + 0x4, tmp[1]); in nv44_vmm_pgt_fill()
68 VMM_WO032(pt, vmm, pteo + 0x8, tmp[2]); in nv44_vmm_pgt_fill()
69 VMM_WO032(pt, vmm, pteo + 0xc, tmp[3] | 0x40000000); in nv44_vmm_pgt_fill()
73 nv44_vmm_pgt_pte(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, in nv44_vmm_pgt_pte() argument
82 nv44_vmm_pgt_fill(vmm, pt, tmp, ptei, pten); in nv44_vmm_pgt_pte()
90 VMM_WO032(pt, vmm, pte in nv44_vmm_pgt_pte()
105 nv44_vmm_pgt_sgl(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, u32 ptei, u32 ptes, struct nvkm_vmm_map *map) nv44_vmm_pgt_sgl() argument
112 nv44_vmm_pgt_dma(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, u32 ptei, u32 ptes, struct nvkm_vmm_map *map) nv44_vmm_pgt_dma() argument
147 nv44_vmm_pgt_unmap(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, u32 ptei, u32 ptes) nv44_vmm_pgt_unmap() argument
185 nv44_vmm_flush(struct nvkm_vmm *vmm, int level) nv44_vmm_flush() argument
213 struct nvkm_vmm *vmm; nv44_vmm_new() local
[all...]
H A Dvmmgp100.c22 #include "vmm.h"
34 gp100_vmm_pfn_unmap(struct nvkm_vmm *vmm, in gp100_vmm_pfn_unmap() argument
37 struct device *dev = vmm->mmu->subdev.device->dev; in gp100_vmm_pfn_unmap()
55 gp100_vmm_pfn_clear(struct nvkm_vmm *vmm, in gp100_vmm_pfn_clear() argument
65 VMM_WO064(pt, vmm, ptei * 8, data & ~BIT_ULL(0)); in gp100_vmm_pfn_clear()
75 gp100_vmm_pgt_pfn(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, in gp100_vmm_pgt_pfn() argument
78 struct device *dev = vmm->mmu->subdev.device->dev; in gp100_vmm_pgt_pfn()
109 VMM_WO064(pt, vmm, ptei++ * 8, data); in gp100_vmm_pgt_pfn()
115 gp100_vmm_pgt_pte(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, in gp100_vmm_pgt_pte() argument
123 VMM_WO064(pt, vmm, pte in gp100_vmm_pgt_pte()
129 gp100_vmm_pgt_sgl(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, u32 ptei, u32 ptes, struct nvkm_vmm_map *map) gp100_vmm_pgt_sgl() argument
136 gp100_vmm_pgt_dma(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, u32 ptei, u32 ptes, struct nvkm_vmm_map *map) gp100_vmm_pgt_dma() argument
155 gp100_vmm_pgt_mem(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, u32 ptei, u32 ptes, struct nvkm_vmm_map *map) gp100_vmm_pgt_mem() argument
162 gp100_vmm_pgt_sparse(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, u32 ptei, u32 ptes) gp100_vmm_pgt_sparse() argument
182 gp100_vmm_lpt_invalid(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, u32 ptei, u32 ptes) gp100_vmm_lpt_invalid() argument
198 gp100_vmm_pd0_pte(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, u32 ptei, u32 ptes, struct nvkm_vmm_map *map, u64 addr) gp100_vmm_pd0_pte() argument
212 gp100_vmm_pd0_mem(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, u32 ptei, u32 ptes, struct nvkm_vmm_map *map) gp100_vmm_pd0_mem() argument
236 gp100_vmm_pd0_pde(struct nvkm_vmm *vmm, struct nvkm_vmm_pt *pgd, u32 pdei) gp100_vmm_pd0_pde() argument
253 gp100_vmm_pd0_sparse(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, u32 pdei, u32 pdes) gp100_vmm_pd0_sparse() argument
261 gp100_vmm_pd0_unmap(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, u32 pdei, u32 pdes) gp100_vmm_pd0_unmap() argument
268 gp100_vmm_pd0_pfn_unmap(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, u32 ptei, u32 ptes) gp100_vmm_pd0_pfn_unmap() argument
290 gp100_vmm_pd0_pfn_clear(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, u32 ptei, u32 ptes) gp100_vmm_pd0_pfn_clear() argument
312 gp100_vmm_pd0_pfn(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, u32 ptei, u32 ptes, struct nvkm_vmm_map *map) gp100_vmm_pd0_pfn() argument
363 gp100_vmm_pd1_pde(struct nvkm_vmm *vmm, struct nvkm_vmm_pt *pgd, u32 pdei) gp100_vmm_pd1_pde() argument
405 gp100_vmm_valid(struct nvkm_vmm *vmm, void *argv, u32 argc, struct nvkm_vmm_map *map) gp100_vmm_valid() argument
486 gp100_vmm_fault_cancel(struct nvkm_vmm *vmm, void *argv, u32 argc) gp100_vmm_fault_cancel() argument
521 gp100_vmm_fault_replay(struct nvkm_vmm *vmm, void *argv, u32 argc) gp100_vmm_fault_replay() argument
536 gp100_vmm_mthd(struct nvkm_vmm *vmm, struct nvkm_client *client, u32 mthd, void *argv, u32 argc) gp100_vmm_mthd() argument
551 gp100_vmm_invalidate_pdb(struct nvkm_vmm *vmm, u64 addr) gp100_vmm_invalidate_pdb() argument
559 gp100_vmm_flush(struct nvkm_vmm *vmm, int depth) gp100_vmm_flush() argument
569 gp100_vmm_join(struct nvkm_vmm *vmm, struct nvkm_memory *inst) gp100_vmm_join() argument
[all...]
H A Dvmmgf100.c22 #include "vmm.h"
32 gf100_vmm_pgt_pte(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, in gf100_vmm_pgt_pte() argument
44 VMM_WO064(pt, vmm, ptei++ * 8, data); in gf100_vmm_pgt_pte()
51 VMM_WO064(pt, vmm, ptei++ * 8, data); in gf100_vmm_pgt_pte()
58 gf100_vmm_pgt_sgl(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, in gf100_vmm_pgt_sgl() argument
61 VMM_MAP_ITER_SGL(vmm, pt, ptei, ptes, map, gf100_vmm_pgt_pte); in gf100_vmm_pgt_sgl()
65 gf100_vmm_pgt_dma(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, in gf100_vmm_pgt_dma() argument
69 VMM_SPAM(vmm, "DMAA %08x %08x PTE(s)", ptei, ptes); in gf100_vmm_pgt_dma()
73 VMM_WO064(pt, vmm, ptei++ * 8, data); in gf100_vmm_pgt_dma()
80 VMM_MAP_ITER_DMA(vmm, p in gf100_vmm_pgt_dma()
84 gf100_vmm_pgt_mem(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, u32 ptei, u32 ptes, struct nvkm_vmm_map *map) gf100_vmm_pgt_mem() argument
91 gf100_vmm_pgt_unmap(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, u32 ptei, u32 ptes) gf100_vmm_pgt_unmap() argument
106 gf100_vmm_pgd_pde(struct nvkm_vmm *vmm, struct nvkm_vmm_pt *pgd, u32 pdei) gf100_vmm_pgd_pde() argument
181 gf100_vmm_invalidate_pdb(struct nvkm_vmm *vmm, u64 addr) gf100_vmm_invalidate_pdb() argument
188 gf100_vmm_invalidate(struct nvkm_vmm *vmm, u32 type) gf100_vmm_invalidate() argument
228 gf100_vmm_flush(struct nvkm_vmm *vmm, int depth) gf100_vmm_flush() argument
237 gf100_vmm_valid(struct nvkm_vmm *vmm, void *argv, u32 argc, struct nvkm_vmm_map *map) gf100_vmm_valid() argument
336 gf100_vmm_part(struct nvkm_vmm *vmm, struct nvkm_memory *inst) gf100_vmm_part() argument
342 gf100_vmm_join_(struct nvkm_vmm *vmm, struct nvkm_memory *inst, u64 base) gf100_vmm_join_() argument
366 gf100_vmm_join(struct nvkm_vmm *vmm, struct nvkm_memory *inst) gf100_vmm_join() argument
[all...]
H A Dvmmnv50.c22 #include "vmm.h"
32 nv50_vmm_pgt_pte(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, in nv50_vmm_pgt_pte() argument
53 VMM_WO064(pt, vmm, ptei++ * 8, data); in nv50_vmm_pgt_pte()
58 nv50_vmm_pgt_sgl(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, in nv50_vmm_pgt_sgl() argument
61 VMM_MAP_ITER_SGL(vmm, pt, ptei, ptes, map, nv50_vmm_pgt_pte); in nv50_vmm_pgt_sgl()
65 nv50_vmm_pgt_dma(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, in nv50_vmm_pgt_dma() argument
69 VMM_SPAM(vmm, "DMAA %08x %08x PTE(s)", ptei, ptes); in nv50_vmm_pgt_dma()
73 VMM_WO064(pt, vmm, ptei++ * 8, data); in nv50_vmm_pgt_dma()
80 VMM_MAP_ITER_DMA(vmm, pt, ptei, ptes, map, nv50_vmm_pgt_pte); in nv50_vmm_pgt_dma()
84 nv50_vmm_pgt_mem(struct nvkm_vmm *vmm, struc argument
91 nv50_vmm_pgt_unmap(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, u32 ptei, u32 ptes) nv50_vmm_pgt_unmap() argument
106 nv50_vmm_pde(struct nvkm_vmm *vmm, struct nvkm_vmm_pt *pgt, u64 *pdata) nv50_vmm_pde() argument
145 nv50_vmm_pgd_pde(struct nvkm_vmm *vmm, struct nvkm_vmm_pt *pgd, u32 pdei) nv50_vmm_pgd_pde() argument
181 nv50_vmm_flush(struct nvkm_vmm *vmm, int level) nv50_vmm_flush() argument
226 nv50_vmm_valid(struct nvkm_vmm *vmm, void *argv, u32 argc, struct nvkm_vmm_map *map) nv50_vmm_valid() argument
327 nv50_vmm_part(struct nvkm_vmm *vmm, struct nvkm_memory *inst) nv50_vmm_part() argument
341 nv50_vmm_join(struct nvkm_vmm *vmm, struct nvkm_memory *inst) nv50_vmm_join() argument
[all...]
H A Dvmmnv04.c22 #include "vmm.h"
28 nv04_vmm_pgt_pte(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, in nv04_vmm_pgt_pte() argument
33 VMM_WO032(pt, vmm, 8 + ptei++ * 4, data); in nv04_vmm_pgt_pte()
39 nv04_vmm_pgt_sgl(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, in nv04_vmm_pgt_sgl() argument
42 VMM_MAP_ITER_SGL(vmm, pt, ptei, ptes, map, nv04_vmm_pgt_pte); in nv04_vmm_pgt_sgl()
46 nv04_vmm_pgt_dma(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, in nv04_vmm_pgt_dma() argument
52 VMM_WO032(pt, vmm, 8 + (ptei++ * 4), *map->dma++ | 0x00000003); in nv04_vmm_pgt_dma()
55 VMM_MAP_ITER_DMA(vmm, pt, ptei, ptes, map, nv04_vmm_pgt_pte); in nv04_vmm_pgt_dma()
60 nv04_vmm_pgt_unmap(struct nvkm_vmm *vmm, in nv04_vmm_pgt_unmap() argument
63 VMM_FO032(pt, vmm, in nv04_vmm_pgt_unmap()
80 nv04_vmm_valid(struct nvkm_vmm *vmm, void *argv, u32 argc, struct nvkm_vmm_map *map) nv04_vmm_valid() argument
126 struct nvkm_vmm *vmm; nv04_vmm_new() local
[all...]
H A Dvmmnv41.c22 #include "vmm.h"
27 nv41_vmm_pgt_pte(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, in nv41_vmm_pgt_pte() argument
32 VMM_WO032(pt, vmm, ptei++ * 4, data); in nv41_vmm_pgt_pte()
38 nv41_vmm_pgt_sgl(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, in nv41_vmm_pgt_sgl() argument
41 VMM_MAP_ITER_SGL(vmm, pt, ptei, ptes, map, nv41_vmm_pgt_pte); in nv41_vmm_pgt_sgl()
45 nv41_vmm_pgt_dma(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, in nv41_vmm_pgt_dma() argument
52 VMM_WO032(pt, vmm, ptei++ * 4, data); in nv41_vmm_pgt_dma()
56 VMM_MAP_ITER_DMA(vmm, pt, ptei, ptes, map, nv41_vmm_pgt_pte); in nv41_vmm_pgt_dma()
61 nv41_vmm_pgt_unmap(struct nvkm_vmm *vmm, in nv41_vmm_pgt_unmap() argument
64 VMM_FO032(pt, vmm, pte in nv41_vmm_pgt_unmap()
81 nv41_vmm_flush(struct nvkm_vmm *vmm, int level) nv41_vmm_flush() argument
[all...]
/kernel/linux/linux-5.10/drivers/gpu/drm/nouveau/nvkm/subdev/mmu/
H A Dvmm.c23 #include "vmm.h"
75 struct nvkm_vmm *vmm; member
113 VMM_TRACE(_it->vmm, "%s "f, _buf, ##a); \
129 if (it->vmm->func->flush) { in nvkm_vmm_flush()
131 it->vmm->func->flush(it->vmm, it->flush); in nvkm_vmm_flush()
145 struct nvkm_vmm *vmm = it->vmm; in nvkm_vmm_unref_pdes() local
159 func->sparse(vmm, pgd->pt[0], pdei, 1); in nvkm_vmm_unref_pdes()
162 func->unmap(vmm, pg in nvkm_vmm_unref_pdes()
203 struct nvkm_vmm *vmm = it->vmm; nvkm_vmm_unref_sptes() local
302 struct nvkm_vmm *vmm = it->vmm; nvkm_vmm_ref_sptes() local
419 struct nvkm_vmm *vmm = it->vmm; nvkm_vmm_ref_hwpt() local
501 nvkm_vmm_iter(struct nvkm_vmm *vmm, const struct nvkm_vmm_page *page, u64 addr, u64 size, const char *name, bool ref, bool pfn, bool (*REF_PTES)(struct nvkm_vmm_iter *, bool pfn, u32, u32), nvkm_vmm_pte_func MAP_PTES, struct nvkm_vmm_map *map, nvkm_vmm_pxe_func CLR_PTES) nvkm_vmm_iter() argument
602 nvkm_vmm_ptes_sparse_put(struct nvkm_vmm *vmm, const struct nvkm_vmm_page *page, u64 addr, u64 size) nvkm_vmm_ptes_sparse_put() argument
612 nvkm_vmm_ptes_sparse_get(struct nvkm_vmm *vmm, const struct nvkm_vmm_page *page, u64 addr, u64 size) nvkm_vmm_ptes_sparse_get() argument
630 nvkm_vmm_ptes_sparse(struct nvkm_vmm *vmm, u64 addr, u64 size, bool ref) nvkm_vmm_ptes_sparse() argument
680 nvkm_vmm_ptes_unmap_put(struct nvkm_vmm *vmm, const struct nvkm_vmm_page *page, u64 addr, u64 size, bool sparse, bool pfn) nvkm_vmm_ptes_unmap_put() argument
691 nvkm_vmm_ptes_get_map(struct nvkm_vmm *vmm, const struct nvkm_vmm_page *page, u64 addr, u64 size, struct nvkm_vmm_map *map, nvkm_vmm_pte_func func) nvkm_vmm_ptes_get_map() argument
706 nvkm_vmm_ptes_unmap(struct nvkm_vmm *vmm, const struct nvkm_vmm_page *page, u64 addr, u64 size, bool sparse, bool pfn) nvkm_vmm_ptes_unmap() argument
717 nvkm_vmm_ptes_map(struct nvkm_vmm *vmm, const struct nvkm_vmm_page *page, u64 addr, u64 size, struct nvkm_vmm_map *map, nvkm_vmm_pte_func func) nvkm_vmm_ptes_map() argument
726 nvkm_vmm_ptes_put(struct nvkm_vmm *vmm, const struct nvkm_vmm_page *page, u64 addr, u64 size) nvkm_vmm_ptes_put() argument
734 nvkm_vmm_ptes_get(struct nvkm_vmm *vmm, const struct nvkm_vmm_page *page, u64 addr, u64 size) nvkm_vmm_ptes_get() argument
785 nvkm_vmm_free_remove(struct nvkm_vmm *vmm, struct nvkm_vma *vma) nvkm_vmm_free_remove() argument
791 nvkm_vmm_free_delete(struct nvkm_vmm *vmm, struct nvkm_vma *vma) nvkm_vmm_free_delete() argument
799 nvkm_vmm_free_insert(struct nvkm_vmm *vmm, struct nvkm_vma *vma) nvkm_vmm_free_insert() argument
827 nvkm_vmm_node_remove(struct nvkm_vmm *vmm, struct nvkm_vma *vma) nvkm_vmm_node_remove() argument
833 nvkm_vmm_node_delete(struct nvkm_vmm *vmm, struct nvkm_vma *vma) nvkm_vmm_node_delete() argument
841 nvkm_vmm_node_insert(struct nvkm_vmm *vmm, struct nvkm_vma *vma) nvkm_vmm_node_insert() argument
863 nvkm_vmm_node_search(struct nvkm_vmm *vmm, u64 addr) nvkm_vmm_node_search() argument
883 nvkm_vmm_node_merge(struct nvkm_vmm *vmm, struct nvkm_vma *prev, struct nvkm_vma *vma, struct nvkm_vma *next, u64 size) nvkm_vmm_node_merge() argument
925 nvkm_vmm_node_split(struct nvkm_vmm *vmm, struct nvkm_vma *vma, u64 addr, u64 size) nvkm_vmm_node_split() argument
969 nvkm_vmm_dump(struct nvkm_vmm *vmm) nvkm_vmm_dump() argument
978 nvkm_vmm_dtor(struct nvkm_vmm *vmm) nvkm_vmm_dtor() argument
1019 nvkm_vmm_ctor_managed(struct nvkm_vmm *vmm, u64 addr, u64 size) nvkm_vmm_ctor_managed() argument
1034 nvkm_vmm_ctor(const struct nvkm_vmm_func *func, struct nvkm_mmu *mmu, u32 pd_header, bool managed, u64 addr, u64 size, struct lock_class_key *key, const char *name, struct nvkm_vmm *vmm) nvkm_vmm_ctor() argument
1151 nvkm_vmm_pfn_split_merge(struct nvkm_vmm *vmm, struct nvkm_vma *vma, u64 addr, u64 size, u8 page, bool map) nvkm_vmm_pfn_split_merge() argument
1174 nvkm_vmm_pfn_unmap(struct nvkm_vmm *vmm, u64 addr, u64 size) nvkm_vmm_pfn_unmap() argument
1210 nvkm_vmm_pfn_map(struct nvkm_vmm *vmm, u8 shift, u64 addr, u64 size, u64 *pfn) nvkm_vmm_pfn_map() argument
1333 nvkm_vmm_unmap_region(struct nvkm_vmm *vmm, struct nvkm_vma *vma) nvkm_vmm_unmap_region() argument
1350 nvkm_vmm_unmap_locked(struct nvkm_vmm *vmm, struct nvkm_vma *vma, bool pfn) nvkm_vmm_unmap_locked() argument
1365 nvkm_vmm_unmap(struct nvkm_vmm *vmm, struct nvkm_vma *vma) nvkm_vmm_unmap() argument
1375 nvkm_vmm_map_valid(struct nvkm_vmm *vmm, struct nvkm_vma *vma, void *argv, u32 argc, struct nvkm_vmm_map *map) nvkm_vmm_map_valid() argument
1411 nvkm_vmm_map_choose(struct nvkm_vmm *vmm, struct nvkm_vma *vma, void *argv, u32 argc, struct nvkm_vmm_map *map) nvkm_vmm_map_choose() argument
1423 nvkm_vmm_map_locked(struct nvkm_vmm *vmm, struct nvkm_vma *vma, void *argv, u32 argc, struct nvkm_vmm_map *map) nvkm_vmm_map_locked() argument
1509 nvkm_vmm_map(struct nvkm_vmm *vmm, struct nvkm_vma *vma, void *argv, u32 argc, struct nvkm_vmm_map *map) nvkm_vmm_map() argument
1521 nvkm_vmm_put_region(struct nvkm_vmm *vmm, struct nvkm_vma *vma) nvkm_vmm_put_region() argument
1540 nvkm_vmm_put_locked(struct nvkm_vmm *vmm, struct nvkm_vma *vma) nvkm_vmm_put_locked() argument
1623 nvkm_vmm_put(struct nvkm_vmm *vmm, struct nvkm_vma **pvma) nvkm_vmm_put() argument
1635 nvkm_vmm_get_locked(struct nvkm_vmm *vmm, bool getref, bool mapref, bool sparse, u8 shift, u8 align, u64 size, struct nvkm_vma **pvma) nvkm_vmm_get_locked() argument
1773 nvkm_vmm_get(struct nvkm_vmm *vmm, u8 page, u64 size, struct nvkm_vma **pvma) nvkm_vmm_get() argument
1783 nvkm_vmm_part(struct nvkm_vmm *vmm, struct nvkm_memory *inst) nvkm_vmm_part() argument
1793 nvkm_vmm_join(struct nvkm_vmm *vmm, struct nvkm_memory *inst) nvkm_vmm_join() argument
1814 nvkm_vmm_boot(struct nvkm_vmm *vmm) nvkm_vmm_boot() argument
1836 struct nvkm_vmm *vmm = container_of(kref, typeof(*vmm), kref); nvkm_vmm_del() local
1844 struct nvkm_vmm *vmm = *pvmm; nvkm_vmm_unref() local
1852 nvkm_vmm_ref(struct nvkm_vmm *vmm) nvkm_vmm_ref() argument
1865 struct nvkm_vmm *vmm = NULL; nvkm_vmm_new() local
[all...]
H A Duvmm.c42 return nvkm_uvmm(object)->vmm; in nvkm_uvmm_search()
52 struct nvkm_vmm *vmm = uvmm->vmm; in nvkm_uvmm_mthd_pfnclr() local
66 mutex_lock(&vmm->mutex); in nvkm_uvmm_mthd_pfnclr()
67 ret = nvkm_vmm_pfn_unmap(vmm, addr, size); in nvkm_uvmm_mthd_pfnclr()
68 mutex_unlock(&vmm->mutex); in nvkm_uvmm_mthd_pfnclr()
81 struct nvkm_vmm *vmm = uvmm->vmm; in nvkm_uvmm_mthd_pfnmap() local
100 mutex_lock(&vmm->mutex); in nvkm_uvmm_mthd_pfnmap()
101 ret = nvkm_vmm_pfn_map(vmm, pag in nvkm_uvmm_mthd_pfnmap()
115 struct nvkm_vmm *vmm = uvmm->vmm; nvkm_uvmm_mthd_unmap() local
159 struct nvkm_vmm *vmm = uvmm->vmm; nvkm_uvmm_mthd_map() local
237 struct nvkm_vmm *vmm = uvmm->vmm; nvkm_uvmm_mthd_put() local
275 struct nvkm_vmm *vmm = uvmm->vmm; nvkm_uvmm_mthd_get() local
[all...]
H A Dvmmnv44.c22 #include "vmm.h"
27 nv44_vmm_pgt_fill(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, in nv44_vmm_pgt_fill() argument
39 u32 addr = (list ? *list++ : vmm->null) >> 12; in nv44_vmm_pgt_fill()
66 VMM_WO032(pt, vmm, pteo + 0x0, tmp[0]); in nv44_vmm_pgt_fill()
67 VMM_WO032(pt, vmm, pteo + 0x4, tmp[1]); in nv44_vmm_pgt_fill()
68 VMM_WO032(pt, vmm, pteo + 0x8, tmp[2]); in nv44_vmm_pgt_fill()
69 VMM_WO032(pt, vmm, pteo + 0xc, tmp[3] | 0x40000000); in nv44_vmm_pgt_fill()
73 nv44_vmm_pgt_pte(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, in nv44_vmm_pgt_pte() argument
82 nv44_vmm_pgt_fill(vmm, pt, tmp, ptei, pten); in nv44_vmm_pgt_pte()
90 VMM_WO032(pt, vmm, pte in nv44_vmm_pgt_pte()
105 nv44_vmm_pgt_sgl(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, u32 ptei, u32 ptes, struct nvkm_vmm_map *map) nv44_vmm_pgt_sgl() argument
112 nv44_vmm_pgt_dma(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, u32 ptei, u32 ptes, struct nvkm_vmm_map *map) nv44_vmm_pgt_dma() argument
147 nv44_vmm_pgt_unmap(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, u32 ptei, u32 ptes) nv44_vmm_pgt_unmap() argument
185 nv44_vmm_flush(struct nvkm_vmm *vmm, int level) nv44_vmm_flush() argument
213 struct nvkm_vmm *vmm; nv44_vmm_new() local
[all...]
H A Dvmmgp100.c22 #include "vmm.h"
34 gp100_vmm_pfn_unmap(struct nvkm_vmm *vmm, in gp100_vmm_pfn_unmap() argument
37 struct device *dev = vmm->mmu->subdev.device->dev; in gp100_vmm_pfn_unmap()
55 gp100_vmm_pfn_clear(struct nvkm_vmm *vmm, in gp100_vmm_pfn_clear() argument
65 VMM_WO064(pt, vmm, ptei * 8, data & ~BIT_ULL(0)); in gp100_vmm_pfn_clear()
75 gp100_vmm_pgt_pfn(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, in gp100_vmm_pgt_pfn() argument
78 struct device *dev = vmm->mmu->subdev.device->dev; in gp100_vmm_pgt_pfn()
106 VMM_WO064(pt, vmm, ptei++ * 8, data); in gp100_vmm_pgt_pfn()
112 gp100_vmm_pgt_pte(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, in gp100_vmm_pgt_pte() argument
120 VMM_WO064(pt, vmm, pte in gp100_vmm_pgt_pte()
126 gp100_vmm_pgt_sgl(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, u32 ptei, u32 ptes, struct nvkm_vmm_map *map) gp100_vmm_pgt_sgl() argument
133 gp100_vmm_pgt_dma(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, u32 ptei, u32 ptes, struct nvkm_vmm_map *map) gp100_vmm_pgt_dma() argument
152 gp100_vmm_pgt_mem(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, u32 ptei, u32 ptes, struct nvkm_vmm_map *map) gp100_vmm_pgt_mem() argument
159 gp100_vmm_pgt_sparse(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, u32 ptei, u32 ptes) gp100_vmm_pgt_sparse() argument
179 gp100_vmm_lpt_invalid(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, u32 ptei, u32 ptes) gp100_vmm_lpt_invalid() argument
195 gp100_vmm_pd0_pte(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, u32 ptei, u32 ptes, struct nvkm_vmm_map *map, u64 addr) gp100_vmm_pd0_pte() argument
209 gp100_vmm_pd0_mem(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, u32 ptei, u32 ptes, struct nvkm_vmm_map *map) gp100_vmm_pd0_mem() argument
233 gp100_vmm_pd0_pde(struct nvkm_vmm *vmm, struct nvkm_vmm_pt *pgd, u32 pdei) gp100_vmm_pd0_pde() argument
250 gp100_vmm_pd0_sparse(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, u32 pdei, u32 pdes) gp100_vmm_pd0_sparse() argument
258 gp100_vmm_pd0_unmap(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, u32 pdei, u32 pdes) gp100_vmm_pd0_unmap() argument
265 gp100_vmm_pd0_pfn_unmap(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, u32 ptei, u32 ptes) gp100_vmm_pd0_pfn_unmap() argument
287 gp100_vmm_pd0_pfn_clear(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, u32 ptei, u32 ptes) gp100_vmm_pd0_pfn_clear() argument
309 gp100_vmm_pd0_pfn(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, u32 ptei, u32 ptes, struct nvkm_vmm_map *map) gp100_vmm_pd0_pfn() argument
357 gp100_vmm_pd1_pde(struct nvkm_vmm *vmm, struct nvkm_vmm_pt *pgd, u32 pdei) gp100_vmm_pd1_pde() argument
399 gp100_vmm_valid(struct nvkm_vmm *vmm, void *argv, u32 argc, struct nvkm_vmm_map *map) gp100_vmm_valid() argument
478 gp100_vmm_fault_cancel(struct nvkm_vmm *vmm, void *argv, u32 argc) gp100_vmm_fault_cancel() argument
513 gp100_vmm_fault_replay(struct nvkm_vmm *vmm, void *argv, u32 argc) gp100_vmm_fault_replay() argument
528 gp100_vmm_mthd(struct nvkm_vmm *vmm, struct nvkm_client *client, u32 mthd, void *argv, u32 argc) gp100_vmm_mthd() argument
545 gp100_vmm_invalidate_pdb(struct nvkm_vmm *vmm, u64 addr) gp100_vmm_invalidate_pdb() argument
553 gp100_vmm_flush(struct nvkm_vmm *vmm, int depth) gp100_vmm_flush() argument
563 gp100_vmm_join(struct nvkm_vmm *vmm, struct nvkm_memory *inst) gp100_vmm_join() argument
[all...]
H A Dvmmgf100.c22 #include "vmm.h"
32 gf100_vmm_pgt_pte(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, in gf100_vmm_pgt_pte() argument
44 VMM_WO064(pt, vmm, ptei++ * 8, data); in gf100_vmm_pgt_pte()
51 VMM_WO064(pt, vmm, ptei++ * 8, data); in gf100_vmm_pgt_pte()
58 gf100_vmm_pgt_sgl(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, in gf100_vmm_pgt_sgl() argument
61 VMM_MAP_ITER_SGL(vmm, pt, ptei, ptes, map, gf100_vmm_pgt_pte); in gf100_vmm_pgt_sgl()
65 gf100_vmm_pgt_dma(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, in gf100_vmm_pgt_dma() argument
69 VMM_SPAM(vmm, "DMAA %08x %08x PTE(s)", ptei, ptes); in gf100_vmm_pgt_dma()
73 VMM_WO064(pt, vmm, ptei++ * 8, data); in gf100_vmm_pgt_dma()
80 VMM_MAP_ITER_DMA(vmm, p in gf100_vmm_pgt_dma()
84 gf100_vmm_pgt_mem(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, u32 ptei, u32 ptes, struct nvkm_vmm_map *map) gf100_vmm_pgt_mem() argument
91 gf100_vmm_pgt_unmap(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, u32 ptei, u32 ptes) gf100_vmm_pgt_unmap() argument
106 gf100_vmm_pgd_pde(struct nvkm_vmm *vmm, struct nvkm_vmm_pt *pgd, u32 pdei) gf100_vmm_pgd_pde() argument
181 gf100_vmm_invalidate_pdb(struct nvkm_vmm *vmm, u64 addr) gf100_vmm_invalidate_pdb() argument
188 gf100_vmm_invalidate(struct nvkm_vmm *vmm, u32 type) gf100_vmm_invalidate() argument
229 gf100_vmm_flush(struct nvkm_vmm *vmm, int depth) gf100_vmm_flush() argument
238 gf100_vmm_valid(struct nvkm_vmm *vmm, void *argv, u32 argc, struct nvkm_vmm_map *map) gf100_vmm_valid() argument
335 gf100_vmm_part(struct nvkm_vmm *vmm, struct nvkm_memory *inst) gf100_vmm_part() argument
341 gf100_vmm_join_(struct nvkm_vmm *vmm, struct nvkm_memory *inst, u64 base) gf100_vmm_join_() argument
365 gf100_vmm_join(struct nvkm_vmm *vmm, struct nvkm_memory *inst) gf100_vmm_join() argument
[all...]
H A Dvmmnv50.c22 #include "vmm.h"
32 nv50_vmm_pgt_pte(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, in nv50_vmm_pgt_pte() argument
53 VMM_WO064(pt, vmm, ptei++ * 8, data); in nv50_vmm_pgt_pte()
58 nv50_vmm_pgt_sgl(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, in nv50_vmm_pgt_sgl() argument
61 VMM_MAP_ITER_SGL(vmm, pt, ptei, ptes, map, nv50_vmm_pgt_pte); in nv50_vmm_pgt_sgl()
65 nv50_vmm_pgt_dma(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, in nv50_vmm_pgt_dma() argument
69 VMM_SPAM(vmm, "DMAA %08x %08x PTE(s)", ptei, ptes); in nv50_vmm_pgt_dma()
73 VMM_WO064(pt, vmm, ptei++ * 8, data); in nv50_vmm_pgt_dma()
80 VMM_MAP_ITER_DMA(vmm, pt, ptei, ptes, map, nv50_vmm_pgt_pte); in nv50_vmm_pgt_dma()
84 nv50_vmm_pgt_mem(struct nvkm_vmm *vmm, struc argument
91 nv50_vmm_pgt_unmap(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, u32 ptei, u32 ptes) nv50_vmm_pgt_unmap() argument
106 nv50_vmm_pde(struct nvkm_vmm *vmm, struct nvkm_vmm_pt *pgt, u64 *pdata) nv50_vmm_pde() argument
145 nv50_vmm_pgd_pde(struct nvkm_vmm *vmm, struct nvkm_vmm_pt *pgd, u32 pdei) nv50_vmm_pgd_pde() argument
181 nv50_vmm_flush(struct nvkm_vmm *vmm, int level) nv50_vmm_flush() argument
227 nv50_vmm_valid(struct nvkm_vmm *vmm, void *argv, u32 argc, struct nvkm_vmm_map *map) nv50_vmm_valid() argument
325 nv50_vmm_part(struct nvkm_vmm *vmm, struct nvkm_memory *inst) nv50_vmm_part() argument
339 nv50_vmm_join(struct nvkm_vmm *vmm, struct nvkm_memory *inst) nv50_vmm_join() argument
[all...]
H A Dvmmnv04.c22 #include "vmm.h"
28 nv04_vmm_pgt_pte(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, in nv04_vmm_pgt_pte() argument
33 VMM_WO032(pt, vmm, 8 + ptei++ * 4, data); in nv04_vmm_pgt_pte()
39 nv04_vmm_pgt_sgl(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, in nv04_vmm_pgt_sgl() argument
42 VMM_MAP_ITER_SGL(vmm, pt, ptei, ptes, map, nv04_vmm_pgt_pte); in nv04_vmm_pgt_sgl()
46 nv04_vmm_pgt_dma(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, in nv04_vmm_pgt_dma() argument
52 VMM_WO032(pt, vmm, 8 + (ptei++ * 4), *map->dma++ | 0x00000003); in nv04_vmm_pgt_dma()
55 VMM_MAP_ITER_DMA(vmm, pt, ptei, ptes, map, nv04_vmm_pgt_pte); in nv04_vmm_pgt_dma()
60 nv04_vmm_pgt_unmap(struct nvkm_vmm *vmm, in nv04_vmm_pgt_unmap() argument
63 VMM_FO032(pt, vmm, in nv04_vmm_pgt_unmap()
80 nv04_vmm_valid(struct nvkm_vmm *vmm, void *argv, u32 argc, struct nvkm_vmm_map *map) nv04_vmm_valid() argument
126 struct nvkm_vmm *vmm; nv04_vmm_new() local
[all...]
H A Dvmmnv41.c22 #include "vmm.h"
27 nv41_vmm_pgt_pte(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, in nv41_vmm_pgt_pte() argument
32 VMM_WO032(pt, vmm, ptei++ * 4, data); in nv41_vmm_pgt_pte()
38 nv41_vmm_pgt_sgl(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, in nv41_vmm_pgt_sgl() argument
41 VMM_MAP_ITER_SGL(vmm, pt, ptei, ptes, map, nv41_vmm_pgt_pte); in nv41_vmm_pgt_sgl()
45 nv41_vmm_pgt_dma(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, in nv41_vmm_pgt_dma() argument
52 VMM_WO032(pt, vmm, ptei++ * 4, data); in nv41_vmm_pgt_dma()
56 VMM_MAP_ITER_DMA(vmm, pt, ptei, ptes, map, nv41_vmm_pgt_pte); in nv41_vmm_pgt_dma()
61 nv41_vmm_pgt_unmap(struct nvkm_vmm *vmm, in nv41_vmm_pgt_unmap() argument
64 VMM_FO032(pt, vmm, pte in nv41_vmm_pgt_unmap()
81 nv41_vmm_flush(struct nvkm_vmm *vmm, int level) nv41_vmm_flush() argument
[all...]
/kernel/linux/linux-5.10/drivers/gpu/drm/nouveau/nvif/
H A Dvmm.c22 #include <nvif/vmm.h>
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
115 nvif_vmm_ctor(struct nvif_mmu *mmu, const char *name, s32 oclass, bool managed, u64 addr, u64 size, void *argv, u32 argc, struct nvif_vmm *vmm) nvif_vmm_ctor() argument
[all...]
/kernel/linux/linux-5.10/drivers/gpu/drm/nouveau/
H A Dnouveau_vmm.c32 nvif_vmm_unmap(&vma->vmm->vmm, vma->addr); in nouveau_vma_unmap()
41 int ret = nouveau_mem_map(mem, &vma->vmm->vmm, &tmp); in nouveau_vma_map()
49 nouveau_vma_find(struct nouveau_bo *nvbo, struct nouveau_vmm *vmm) in nouveau_vma_find() argument
54 if (vma->vmm == vmm) in nouveau_vma_find()
68 nvif_vmm_put(&vma->vmm->vmm, &tmp); in nouveau_vma_del()
77 nouveau_vma_new(struct nouveau_bo *nvbo, struct nouveau_vmm *vmm, in nouveau_vma_new() argument
124 nouveau_vmm_fini(struct nouveau_vmm *vmm) nouveau_vmm_fini() argument
132 nouveau_vmm_init(struct nouveau_cli *cli, s32 oclass, struct nouveau_vmm *vmm) nouveau_vmm_init() argument
[all...]
H A Dnouveau_svm.c29 #include <nvif/vmm.h>
97 NV_DEBUG((s)->vmm->cli->drm, "svm-%p: "f"\n", (s), ##a)
99 NV_WARN((s)->vmm->cli->drm, "svm-%p: "f"\n", (s), ##a)
205 mutex_lock(&svmm->vmm->cli->drm->svm->mutex); in nouveau_svmm_part()
206 ivmm = nouveau_ivmm_find(svmm->vmm->cli->drm->svm, inst); in nouveau_svmm_part()
211 mutex_unlock(&svmm->vmm->cli->drm->svm->mutex); in nouveau_svmm_part()
226 mutex_lock(&svmm->vmm->cli->drm->svm->mutex); in nouveau_svmm_join()
227 list_add(&ivmm->head, &svmm->vmm->cli->drm->svm->inst); in nouveau_svmm_join()
228 mutex_unlock(&svmm->vmm->cli->drm->svm->mutex); in nouveau_svmm_join()
238 bool super = svmm->vmm in nouveau_svmm_invalidate()
[all...]
H A Dnouveau_chan.c100 nouveau_svmm_part(chan->vmm->svmm, chan->inst); in nouveau_channel_del()
162 chan->vmm = cli->svm.cli ? &cli->svm : &cli->vmm; in nouveau_channel_prep()
198 ret = nouveau_vma_new(chan->push.buffer, chan->vmm, in nouveau_channel_prep()
213 args.limit = chan->vmm->vmm.limit - 1; in nouveau_channel_prep()
243 args.limit = chan->vmm->vmm.limit - 1; in nouveau_channel_prep()
296 args.volta.vmm = nvif_handle(&chan->vmm in nouveau_channel_ind()
[all...]
/kernel/linux/linux-6.6/drivers/gpu/drm/nouveau/
H A Dnouveau_vmm.c32 nvif_vmm_unmap(&vma->vmm->vmm, vma->addr); in nouveau_vma_unmap()
41 int ret = nouveau_mem_map(mem, &vma->vmm->vmm, &tmp); in nouveau_vma_map()
49 nouveau_vma_find(struct nouveau_bo *nvbo, struct nouveau_vmm *vmm) in nouveau_vma_find() argument
54 if (vma->vmm == vmm) in nouveau_vma_find()
68 nvif_vmm_put(&vma->vmm->vmm, &tmp); in nouveau_vma_del()
77 nouveau_vma_new(struct nouveau_bo *nvbo, struct nouveau_vmm *vmm, in nouveau_vma_new() argument
124 nouveau_vmm_fini(struct nouveau_vmm *vmm) nouveau_vmm_fini() argument
132 nouveau_vmm_init(struct nouveau_cli *cli, s32 oclass, struct nouveau_vmm *vmm) nouveau_vmm_init() argument
[all...]
/kernel/linux/linux-6.6/drivers/gpu/drm/nouveau/nvif/
H A Dvmm.c22 #include <nvif/vmm.h>
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_raw_get(struct nvif_vmm *vmm, u6 argument
124 nvif_vmm_raw_put(struct nvif_vmm *vmm, u64 addr, u64 size, u8 shift) nvif_vmm_raw_put() argument
139 nvif_vmm_raw_map(struct nvif_vmm *vmm, u64 addr, u64 size, u8 shift, void *argv, u32 argc, struct nvif_mem *mem, u64 offset) nvif_vmm_raw_map() argument
160 nvif_vmm_raw_unmap(struct nvif_vmm *vmm, u64 addr, u64 size, u8 shift, bool sparse) nvif_vmm_raw_unmap() argument
177 nvif_vmm_raw_sparse(struct nvif_vmm *vmm, u64 addr, u64 size, bool ref) nvif_vmm_raw_sparse() argument
192 nvif_vmm_dtor(struct nvif_vmm *vmm) nvif_vmm_dtor() argument
199 nvif_vmm_ctor(struct nvif_mmu *mmu, const char *name, s32 oclass, enum nvif_vmm_type type, u64 addr, u64 size, void *argv, u32 argc, struct nvif_vmm *vmm) nvif_vmm_ctor() argument
[all...]
/kernel/linux/linux-5.10/drivers/gpu/drm/nouveau/nvkm/subdev/bar/
H A Dgf100.c34 return gf100_bar(base)->bar[1].vmm; in gf100_bar_bar1_vmm()
63 return gf100_bar(base)->bar[0].vmm; in gf100_bar_bar2_vmm()
103 (bar_nr == 3) ? "bar2" : "bar1", &bar_vm->vmm); in gf100_bar_oneinit_bar()
107 atomic_inc(&bar_vm->vmm->engref[NVKM_SUBDEV_BAR]); in gf100_bar_oneinit_bar()
108 bar_vm->vmm->debug = bar->base.subdev.debug; in gf100_bar_oneinit_bar()
114 ret = nvkm_vmm_boot(bar_vm->vmm); in gf100_bar_oneinit_bar()
119 return nvkm_vmm_join(bar_vm->vmm, bar_vm->inst); in gf100_bar_oneinit_bar()
153 nvkm_vmm_part(bar->bar[1].vmm, bar->bar[1].inst); in gf100_bar_dtor()
154 nvkm_vmm_unref(&bar->bar[1].vmm); in gf100_bar_dtor()
157 nvkm_vmm_part(bar->bar[0].vmm, ba in gf100_bar_dtor()
[all...]
/kernel/linux/linux-6.6/drivers/gpu/drm/nouveau/nvkm/subdev/bar/
H A Dgf100.c34 return gf100_bar(base)->bar[1].vmm; in gf100_bar_bar1_vmm()
63 return gf100_bar(base)->bar[0].vmm; in gf100_bar_bar2_vmm()
103 (bar_nr == 3) ? "bar2" : "bar1", &bar_vm->vmm); in gf100_bar_oneinit_bar()
107 atomic_inc(&bar_vm->vmm->engref[NVKM_SUBDEV_BAR]); in gf100_bar_oneinit_bar()
108 bar_vm->vmm->debug = bar->base.subdev.debug; in gf100_bar_oneinit_bar()
114 ret = nvkm_vmm_boot(bar_vm->vmm); in gf100_bar_oneinit_bar()
119 return nvkm_vmm_join(bar_vm->vmm, bar_vm->inst); in gf100_bar_oneinit_bar()
153 nvkm_vmm_part(bar->bar[1].vmm, bar->bar[1].inst); in gf100_bar_dtor()
154 nvkm_vmm_unref(&bar->bar[1].vmm); in gf100_bar_dtor()
157 nvkm_vmm_part(bar->bar[0].vmm, ba in gf100_bar_dtor()
[all...]
/kernel/linux/linux-5.10/arch/xtensa/kernel/
H A Dsyscall.c64 struct vm_area_struct *vmm; in arch_get_unmapped_area() local
86 for (vmm = find_vma(current->mm, addr); ; vmm = vmm->vm_next) { in arch_get_unmapped_area()
87 /* At this point: (!vmm || addr < vmm->vm_end). */ in arch_get_unmapped_area()
90 if (!vmm || addr + len <= vm_start_gap(vmm)) in arch_get_unmapped_area()
92 addr = vmm->vm_end; in arch_get_unmapped_area()

Completed in 14 milliseconds

12345678