Lines Matching full:vm

13 struct i915_page_table *alloc_pt(struct i915_address_space *vm)  in alloc_pt()  argument
21 pt->base = vm->alloc_pt_dma(vm, I915_GTT_PAGE_SIZE_4K); in alloc_pt()
49 struct i915_page_directory *alloc_pd(struct i915_address_space *vm) in alloc_pd() argument
57 pd->pt.base = vm->alloc_pt_dma(vm, I915_GTT_PAGE_SIZE_4K); in alloc_pd()
67 void free_px(struct i915_address_space *vm, struct i915_page_table *pt, int lvl) in free_px() argument
173 trace_i915_ppgtt_create(&ppgtt->vm); in i915_ppgtt_create()
178 void ppgtt_bind_vma(struct i915_address_space *vm, in ppgtt_bind_vma() argument
187 vm->allocate_va_range(vm, stash, vma->node.start, vma->size); in ppgtt_bind_vma()
196 vm->insert_entries(vm, vma, cache_level, pte_flags); in ppgtt_bind_vma()
200 void ppgtt_unbind_vma(struct i915_address_space *vm, struct i915_vma *vma) in ppgtt_unbind_vma() argument
203 vm->clear_range(vm, vma->node.start, vma->size); in ppgtt_unbind_vma()
212 int i915_vm_alloc_pt_stash(struct i915_address_space *vm, in i915_vm_alloc_pt_stash() argument
219 shift = vm->pd_shift; in i915_vm_alloc_pt_stash()
227 pt = alloc_pt(vm); in i915_vm_alloc_pt_stash()
229 i915_vm_free_pt_stash(vm, stash); in i915_vm_alloc_pt_stash()
237 for (n = 1; n < vm->top; n++) { in i915_vm_alloc_pt_stash()
243 pd = alloc_pd(vm); in i915_vm_alloc_pt_stash()
245 i915_vm_free_pt_stash(vm, stash); in i915_vm_alloc_pt_stash()
257 int i915_vm_pin_pt_stash(struct i915_address_space *vm, in i915_vm_pin_pt_stash() argument
265 err = pin_pt_dma(vm, pt->base); in i915_vm_pin_pt_stash()
274 void i915_vm_free_pt_stash(struct i915_address_space *vm, in i915_vm_free_pt_stash() argument
283 free_px(vm, pt, n); in i915_vm_free_pt_stash()
302 ppgtt->vm.gt = gt; in ppgtt_init()
303 ppgtt->vm.i915 = i915; in ppgtt_init()
304 ppgtt->vm.dma = &i915->drm.pdev->dev; in ppgtt_init()
305 ppgtt->vm.total = BIT_ULL(INTEL_INFO(i915)->ppgtt_size); in ppgtt_init()
307 i915_address_space_init(&ppgtt->vm, VM_CLASS_PPGTT); in ppgtt_init()
309 ppgtt->vm.vma_ops.bind_vma = ppgtt_bind_vma; in ppgtt_init()
310 ppgtt->vm.vma_ops.unbind_vma = ppgtt_unbind_vma; in ppgtt_init()
311 ppgtt->vm.vma_ops.set_pages = ppgtt_set_pages; in ppgtt_init()
312 ppgtt->vm.vma_ops.clear_pages = clear_pages; in ppgtt_init()