• Home
  • Raw
  • Download

Lines Matching refs:vmm

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, ptei++ * 4, tmp[0] >> 0 | tmp[1] << 27); in nv44_vmm_pgt_pte()
91 VMM_WO032(pt, vmm, ptei++ * 4, tmp[1] >> 5 | tmp[2] << 22); in nv44_vmm_pgt_pte()
92 VMM_WO032(pt, vmm, ptei++ * 4, tmp[2] >> 10 | tmp[3] << 17); in nv44_vmm_pgt_pte()
93 VMM_WO032(pt, vmm, ptei++ * 4, tmp[3] >> 15 | 0x40000000); in nv44_vmm_pgt_pte()
100 nv44_vmm_pgt_fill(vmm, pt, tmp, ptei, ptes); in nv44_vmm_pgt_pte()
105 nv44_vmm_pgt_sgl(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, in nv44_vmm_pgt_sgl() argument
108 VMM_MAP_ITER_SGL(vmm, pt, ptei, ptes, map, nv44_vmm_pgt_pte); in nv44_vmm_pgt_sgl()
112 nv44_vmm_pgt_dma(struct nvkm_vmm *vmm, struct nvkm_mmu_pt *pt, in nv44_vmm_pgt_dma() argument
119 nv44_vmm_pgt_fill(vmm, pt, map->dma, ptei, pten); in nv44_vmm_pgt_dma()
129 VMM_WO032(pt, vmm, ptei++ * 4, tmp[0] >> 0 | tmp[1] << 27); in nv44_vmm_pgt_dma()
130 VMM_WO032(pt, vmm, ptei++ * 4, tmp[1] >> 5 | tmp[2] << 22); in nv44_vmm_pgt_dma()
131 VMM_WO032(pt, vmm, ptei++ * 4, tmp[2] >> 10 | tmp[3] << 17); in nv44_vmm_pgt_dma()
132 VMM_WO032(pt, vmm, ptei++ * 4, tmp[3] >> 15 | 0x40000000); in nv44_vmm_pgt_dma()
137 nv44_vmm_pgt_fill(vmm, pt, map->dma, ptei, ptes); in nv44_vmm_pgt_dma()
142 VMM_MAP_ITER_DMA(vmm, pt, ptei, ptes, map, nv44_vmm_pgt_pte); in nv44_vmm_pgt_dma()
147 nv44_vmm_pgt_unmap(struct nvkm_vmm *vmm, in nv44_vmm_pgt_unmap() argument
153 nv44_vmm_pgt_fill(vmm, pt, NULL, ptei, pten); in nv44_vmm_pgt_unmap()
159 VMM_WO032(pt, vmm, ptei++ * 4, 0x00000000); in nv44_vmm_pgt_unmap()
160 VMM_WO032(pt, vmm, ptei++ * 4, 0x00000000); in nv44_vmm_pgt_unmap()
161 VMM_WO032(pt, vmm, ptei++ * 4, 0x00000000); in nv44_vmm_pgt_unmap()
162 VMM_WO032(pt, vmm, ptei++ * 4, 0x00000000); in nv44_vmm_pgt_unmap()
167 nv44_vmm_pgt_fill(vmm, pt, NULL, ptei, ptes); in nv44_vmm_pgt_unmap()
185 nv44_vmm_flush(struct nvkm_vmm *vmm, int level) in nv44_vmm_flush() argument
187 struct nvkm_device *device = vmm->mmu->subdev.device; in nv44_vmm_flush()
188 nvkm_wr32(device, 0x100814, vmm->limit - 4096); in nv44_vmm_flush()
213 struct nvkm_vmm *vmm; in nv44_vmm_new() local
217 argv, argc, key, name, &vmm); in nv44_vmm_new()
218 *pvmm = vmm; in nv44_vmm_new()
222 vmm->nullp = dma_alloc_coherent(subdev->device->dev, 16 * 1024, in nv44_vmm_new()
223 &vmm->null, GFP_KERNEL); in nv44_vmm_new()
224 if (!vmm->nullp) { in nv44_vmm_new()
226 vmm->null = 0; in nv44_vmm_new()