Lines Matching refs:xe_vm

45 static struct drm_gem_object *xe_vm_obj(struct xe_vm *vm)  in xe_vm_obj()
72 struct xe_vm *vm = xe_vma_vm(vma); in xe_vma_userptr_pin_pages()
81 static bool preempt_fences_waiting(struct xe_vm *vm) in preempt_fences_waiting()
107 static int alloc_preempt_fences(struct xe_vm *vm, struct list_head *list, in alloc_preempt_fences()
128 static int wait_for_existing_preempt_fences(struct xe_vm *vm) in wait_for_existing_preempt_fences()
150 static bool xe_vm_is_idle(struct xe_vm *vm) in xe_vm_is_idle()
163 static void arm_preempt_fences(struct xe_vm *vm, struct list_head *list) in arm_preempt_fences()
182 static int add_preempt_fences(struct xe_vm *vm, struct xe_bo *bo) in add_preempt_fences()
206 static void resume_and_reinstall_preempt_fences(struct xe_vm *vm, in resume_and_reinstall_preempt_fences()
222 int xe_vm_add_compute_exec_queue(struct xe_vm *vm, struct xe_exec_queue *q) in xe_vm_add_compute_exec_queue()
284 void xe_vm_remove_compute_exec_queue(struct xe_vm *vm, struct xe_exec_queue *q) in xe_vm_remove_compute_exec_queue()
313 int __xe_vm_userptr_needs_repin(struct xe_vm *vm) in __xe_vm_userptr_needs_repin()
331 void xe_vm_kill(struct xe_vm *vm, bool unlocked) in xe_vm_kill()
387 struct xe_vm *vm = gpuvm_to_vm(vm_bo->vm); in xe_gpuvm_validate()
419 int xe_vm_validate_rebind(struct xe_vm *vm, struct drm_exec *exec, in xe_vm_validate_rebind()
445 static int xe_preempt_work_begin(struct drm_exec *exec, struct xe_vm *vm, in xe_preempt_work_begin()
484 struct xe_vm *vm = container_of(w, struct xe_vm, preempt.rebind_work); in preempt_rebind_work_func()
586 static void __vma_userptr_invalidate(struct xe_vm *vm, struct xe_userptr_vma *uvma) in __vma_userptr_invalidate()
637 struct xe_vm *vm = xe_vma_vm(vma); in vma_userptr_invalidate()
672 struct xe_vm *vm = xe_vma_vm(&uvma->vma); in xe_vma_userptr_force_invalidate()
691 int xe_vm_userptr_pin(struct xe_vm *vm) in xe_vm_userptr_pin()
777 int xe_vm_userptr_check_repin(struct xe_vm *vm) in xe_vm_userptr_check_repin()
878 static struct dma_fence *ops_execute(struct xe_vm *vm,
880 static void xe_vma_ops_init(struct xe_vma_ops *vops, struct xe_vm *vm,
884 int xe_vm_rebind(struct xe_vm *vm, bool rebind_worker) in xe_vm_rebind()
939 struct dma_fence *xe_vma_rebind(struct xe_vm *vm, struct xe_vma *vma, u8 tile_mask) in xe_vma_rebind()
1025 struct dma_fence *xe_vm_range_rebind(struct xe_vm *vm, in xe_vm_range_rebind()
1108 struct dma_fence *xe_vm_range_unbind(struct xe_vm *vm, in xe_vm_range_unbind()
1167 static struct xe_vma *xe_vma_create(struct xe_vm *vm, in xe_vma_create()
1275 struct xe_vm *vm = xe_vma_vm(vma); in xe_vma_destroy_late()
1325 struct xe_vm *vm = xe_vma_vm(vma); in xe_vma_destroy()
1369 struct xe_vm *vm = xe_vma_vm(vma); in xe_vm_lock_vma()
1401 xe_vm_find_overlapping_vma(struct xe_vm *vm, u64 start, u64 range) in xe_vm_find_overlapping_vma()
1417 static int xe_vm_insert_vma(struct xe_vm *vm, struct xe_vma *vma) in xe_vm_insert_vma()
1432 static void xe_vm_remove_vma(struct xe_vm *vm, struct xe_vma *vma) in xe_vm_remove_vma()
1606 struct xe_vm *vm) in xe_vm_create_scratch()
1623 static void xe_vm_free_scratch(struct xe_vm *vm) in xe_vm_free_scratch()
1643 struct xe_vm *xe_vm_create(struct xe_device *xe, u32 flags) in xe_vm_create()
1646 struct xe_vm *vm; in xe_vm_create()
1823 static void xe_vm_close(struct xe_vm *vm) in xe_vm_close()
1865 void xe_vm_close_and_put(struct xe_vm *vm) in xe_vm_close_and_put()
1974 struct xe_vm *vm = in vm_destroy_work_func()
1975 container_of(w, struct xe_vm, destroy_work); in vm_destroy_work_func()
2006 struct xe_vm *vm = container_of(gpuvm, struct xe_vm, gpuvm); in xe_vm_free()
2012 struct xe_vm *xe_vm_lookup(struct xe_file *xef, u32 id) in xe_vm_lookup()
2014 struct xe_vm *vm; in xe_vm_lookup()
2025 u64 xe_vm_pdp4_descriptor(struct xe_vm *vm, struct xe_tile *tile) in xe_vm_pdp4_descriptor()
2032 to_wait_exec_queue(struct xe_vm *vm, struct xe_exec_queue *q) in to_wait_exec_queue()
2063 struct xe_vm *vm; in xe_vm_create_ioctl()
2149 struct xe_vm *vm; in xe_vm_destroy_ioctl()
2187 struct xe_vma *xe_vm_find_vma_by_addr(struct xe_vm *vm, u64 page_addr) in xe_vm_find_vma_by_addr()
2207 static void prep_vma_destroy(struct xe_vm *vm, struct xe_vma *vma, in prep_vma_destroy()
2267 static bool __xe_vm_needs_clear_scratch_pages(struct xe_vm *vm, u32 bind_flags) in __xe_vm_needs_clear_scratch_pages()
2297 vm_bind_ioctl_ops_create(struct xe_vm *vm, struct xe_vma_ops *vops, in vm_bind_ioctl_ops_create()
2445 static struct xe_vma *new_vma(struct xe_vm *vm, struct drm_gpuva_op_map *op, in new_vma()
2529 static int xe_vma_op_commit(struct xe_vm *vm, struct xe_vma_op *op) in xe_vma_op_commit()
2592 static int vm_bind_ioctl_ops_parse(struct xe_vm *vm, struct drm_gpuva_ops *ops, in vm_bind_ioctl_ops_parse()
2776 static void xe_vma_op_unwind(struct xe_vm *vm, struct xe_vma_op *op, in xe_vma_op_unwind()
2831 static void vm_bind_ioctl_ops_unwind(struct xe_vm *vm, in vm_bind_ioctl_ops_unwind()
2859 struct xe_vm *vm = xe_vma_vm(vma); in vma_lock_and_validate()
2888 static int prefetch_ranges(struct xe_vm *vm, struct xe_vma_op *op) in prefetch_ranges()
2939 static int op_lock_and_prep(struct drm_exec *exec, struct xe_vm *vm, in op_lock_and_prep()
3000 static int vm_bind_ioctl_ops_prefetch_ranges(struct xe_vm *vm, struct xe_vma_ops *vops) in vm_bind_ioctl_ops_prefetch_ranges()
3020 struct xe_vm *vm, in vm_bind_ioctl_ops_lock_and_prep()
3079 static int vm_ops_setup_tile_args(struct xe_vm *vm, struct xe_vma_ops *vops) in vm_ops_setup_tile_args()
3105 static struct dma_fence *ops_execute(struct xe_vm *vm, in ops_execute()
3199 static void op_add_ufence(struct xe_vm *vm, struct xe_vma_op *op, in op_add_ufence()
3222 static void vm_bind_ioctl_ops_fini(struct xe_vm *vm, struct xe_vma_ops *vops, in vm_bind_ioctl_ops_fini()
3250 static struct dma_fence *vm_bind_ioctl_ops_execute(struct xe_vm *vm, in vm_bind_ioctl_ops_execute()
3302 static int vm_bind_ioctl_check_args(struct xe_device *xe, struct xe_vm *vm, in vm_bind_ioctl_check_args()
3427 static int vm_bind_ioctl_signal_fences(struct xe_vm *vm, in vm_bind_ioctl_signal_fences()
3450 static void xe_vma_ops_init(struct xe_vma_ops *vops, struct xe_vm *vm, in xe_vma_ops_init()
3526 struct xe_vm *vm; in xe_vm_bind_ioctl()
3756 struct dma_fence *xe_vm_bind_kernel_bo(struct xe_vm *vm, struct xe_bo *bo, in xe_vm_bind_kernel_bo()
3826 int xe_vm_lock(struct xe_vm *vm, bool intr) in xe_vm_lock()
3840 void xe_vm_unlock(struct xe_vm *vm) in xe_vm_unlock()
3857 int xe_vm_range_tilemask_tlb_invalidation(struct xe_vm *vm, u64 start, in xe_vm_range_tilemask_tlb_invalidation()
3920 struct xe_vm *vm = xe_vma_vm(vma); in xe_vm_invalidate_vma()
3970 int xe_vm_validate_protected(struct xe_vm *vm) in xe_vm_validate_protected()
4010 struct xe_vm_snapshot *xe_vm_snapshot_capture(struct xe_vm *vm) in xe_vm_snapshot_capture()