Lines Matching refs:ppgtt
955 struct i915_ppgtt *ppgtt; in init_aliasing_ppgtt() local
958 ppgtt = i915_ppgtt_create(ggtt->vm.gt, 0); in init_aliasing_ppgtt()
959 if (IS_ERR(ppgtt)) in init_aliasing_ppgtt()
960 return PTR_ERR(ppgtt); in init_aliasing_ppgtt()
962 if (GEM_WARN_ON(ppgtt->vm.total < ggtt->vm.total)) { in init_aliasing_ppgtt()
967 err = i915_vm_alloc_pt_stash(&ppgtt->vm, &stash, ggtt->vm.total); in init_aliasing_ppgtt()
971 i915_gem_object_lock(ppgtt->vm.scratch[0], NULL); in init_aliasing_ppgtt()
972 err = i915_vm_map_pt_stash(&ppgtt->vm, &stash); in init_aliasing_ppgtt()
973 i915_gem_object_unlock(ppgtt->vm.scratch[0]); in init_aliasing_ppgtt()
983 ppgtt->vm.allocate_va_range(&ppgtt->vm, &stash, 0, ggtt->vm.total); in init_aliasing_ppgtt()
985 ggtt->alias = ppgtt; in init_aliasing_ppgtt()
986 ggtt->vm.bind_async_flags |= ppgtt->vm.bind_async_flags; in init_aliasing_ppgtt()
994 i915_vm_free_pt_stash(&ppgtt->vm, &stash); in init_aliasing_ppgtt()
998 i915_vm_free_pt_stash(&ppgtt->vm, &stash); in init_aliasing_ppgtt()
1000 i915_vm_put(&ppgtt->vm); in init_aliasing_ppgtt()
1006 struct i915_ppgtt *ppgtt; in fini_aliasing_ppgtt() local
1008 ppgtt = fetch_and_zero(&ggtt->alias); in fini_aliasing_ppgtt()
1009 if (!ppgtt) in fini_aliasing_ppgtt()
1012 i915_vm_put(&ppgtt->vm); in fini_aliasing_ppgtt()