| /linux/drivers/gpu/drm/xe/ |
| H A D | xe_vm.h | 29 struct xe_vm *xe_vm_create(struct xe_device *xe, u32 flags, struct xe_file *xef); 31 struct xe_vm *xe_vm_lookup(struct xe_file *xef, u32 id); 34 static inline struct xe_vm *xe_vm_get(struct xe_vm *vm) in xe_vm_get() 40 static inline void xe_vm_put(struct xe_vm *vm) in xe_vm_put() 45 int xe_vm_lock(struct xe_vm *vm, bool intr); 47 void xe_vm_unlock(struct xe_vm *vm); 49 static inline bool xe_vm_is_closed(struct xe_vm *vm) in xe_vm_is_closed() 55 static inline bool xe_vm_is_banned(struct xe_vm *vm) in xe_vm_is_banned() 60 static inline bool xe_vm_is_closed_or_banned(struct xe_vm *vm) in xe_vm_is_closed_or_banned() 67 xe_vm_find_overlapping_vma(struct xe_vm *vm, u64 start, u64 range); [all …]
|
| H A D | xe_svm.h | 33 struct xe_vm; 71 int xe_svm_init(struct xe_vm *vm); 73 void xe_svm_fini(struct xe_vm *vm); 75 void xe_svm_close(struct xe_vm *vm); 77 int xe_svm_handle_pagefault(struct xe_vm *vm, struct xe_vma *vma, 81 bool xe_svm_has_mapping(struct xe_vm *vm, u64 start, u64 end); 90 struct xe_svm_range *xe_svm_range_find_or_insert(struct xe_vm *vm, u64 addr, 93 int xe_svm_range_get_pages(struct xe_vm *vm, struct xe_svm_range *range, 99 void xe_svm_range_migrate_to_smem(struct xe_vm *vm, struct xe_svm_range *range); 101 bool xe_svm_range_validate(struct xe_vm *vm, [all …]
|
| H A D | xe_trace_bo.h | 31 __field(struct xe_vm *, vm) 95 __field(struct xe_vm *, vm) 188 DECLARE_EVENT_CLASS(xe_vm, 189 TP_PROTO(struct xe_vm *vm), 194 __field(struct xe_vm *, vm) 211 DEFINE_EVENT(xe_vm, xe_vm_kill, 212 TP_PROTO(struct xe_vm *vm), 216 DEFINE_EVENT(xe_vm, xe_vm_create, 217 TP_PROTO(struct xe_vm *vm), 221 DEFINE_EVENT(xe_vm, xe_vm_free, [all …]
|
| H A D | xe_exec_queue.h | 21 struct xe_exec_queue *xe_exec_queue_create(struct xe_device *xe, struct xe_vm *vm, 26 struct xe_vm *vm, 31 struct xe_vm *user_vm, 84 void xe_exec_queue_last_fence_put(struct xe_exec_queue *e, struct xe_vm *vm); 87 struct xe_vm *vm); 89 struct xe_vm *vm); 90 void xe_exec_queue_last_fence_set(struct xe_exec_queue *e, struct xe_vm *vm, 94 struct xe_vm *vm, 101 struct xe_vm *vm, 105 struct xe_vm *vm,
|
| H A D | xe_vm.c | 45 static struct drm_gem_object *xe_vm_obj(struct xe_vm *vm) in xe_vm_obj() 59 int xe_vm_drm_exec_lock(struct xe_vm *vm, struct drm_exec *exec) in xe_vm_drm_exec_lock() 64 static bool preempt_fences_waiting(struct xe_vm *vm) in preempt_fences_waiting() 90 static int alloc_preempt_fences(struct xe_vm *vm, struct list_head *list, in alloc_preempt_fences() 111 static int wait_for_existing_preempt_fences(struct xe_vm *vm) in wait_for_existing_preempt_fences() 143 static bool xe_vm_is_idle(struct xe_vm *vm) in xe_vm_is_idle() 156 static void arm_preempt_fences(struct xe_vm *vm, struct list_head *list) in arm_preempt_fences() 175 static int add_preempt_fences(struct xe_vm *vm, struct xe_bo *bo) in add_preempt_fences() 199 static void resume_and_reinstall_preempt_fences(struct xe_vm *vm, in resume_and_reinstall_preempt_fences() 215 int xe_vm_add_compute_exec_queue(struct xe_vm *vm, struct xe_exec_queue *q) in xe_vm_add_compute_exec_queue() [all …]
|
| H A D | xe_svm.c | 43 static struct xe_vm *gpusvm_to_vm(struct drm_gpusvm *gpusvm) in gpusvm_to_vm() 45 return container_of(gpusvm, struct xe_vm, svm.gpusvm); in gpusvm_to_vm() 48 static struct xe_vm *range_to_vm(struct drm_gpusvm_range *r) in range_to_vm() 92 xe_svm_garbage_collector_add_range(struct xe_vm *vm, struct xe_svm_range *range, in xe_svm_garbage_collector_add_range() 116 xe_svm_range_notifier_event_begin(struct xe_vm *vm, struct drm_gpusvm_range *r, in xe_svm_range_notifier_event_begin() 166 xe_svm_range_notifier_event_end(struct xe_vm *vm, struct drm_gpusvm_range *r, in xe_svm_range_notifier_event_end() 201 struct xe_vm *vm = gpusvm_to_vm(gpusvm); in xe_svm_invalidate() 269 static int __xe_svm_garbage_collector(struct xe_vm *vm, in __xe_svm_garbage_collector() 288 static int xe_svm_range_set_default_attr(struct xe_vm *vm, u64 range_start, u64 range_end) in xe_svm_range_set_default_attr() 337 static int xe_svm_garbage_collector(struct xe_vm *vm) in xe_svm_garbage_collector() [all …]
|
| H A D | xe_exec_queue_types.h | 23 struct xe_vm; 56 struct xe_vm *vm; 61 struct xe_vm *user_vm;
|
| H A D | xe_sync.h | 16 struct xe_vm; 35 struct xe_exec_queue *q, struct xe_vm *vm);
|
| H A D | xe_exec_queue.c | 119 struct xe_vm *vm, in __xe_exec_queue_alloc() 257 struct xe_exec_queue *xe_exec_queue_create(struct xe_device *xe, struct xe_vm *vm, in xe_exec_queue_create() 301 struct xe_vm *vm, in xe_exec_queue_create_class() 345 struct xe_vm *user_vm, in xe_exec_queue_create_bind() 350 struct xe_vm *migrate_vm; in xe_exec_queue_create_bind() 721 struct xe_vm *vm; in xe_exec_queue_create_ioctl() 1049 struct xe_vm *vm) in xe_exec_queue_last_fence_lockdep_assert() 1066 void xe_exec_queue_last_fence_put(struct xe_exec_queue *q, struct xe_vm *vm) in xe_exec_queue_last_fence_put() 1097 struct xe_vm *vm) in xe_exec_queue_last_fence_get() 1124 struct xe_vm *vm) in xe_exec_queue_last_fence_get_for_resume() [all …]
|
| H A D | xe_pt.c | 59 static u64 __xe_pt_empty_pte(struct xe_tile *tile, struct xe_vm *vm, in __xe_pt_empty_pte() 101 struct xe_pt *xe_pt_create(struct xe_vm *vm, struct xe_tile *tile, in xe_pt_create() 161 void xe_pt_populate_empty(struct xe_tile *tile, struct xe_vm *vm, in xe_pt_populate_empty() 286 struct xe_vm *vm; 525 struct xe_vm *vm = xe_walk->vm; in xe_pt_stage_bind_entry() 646 static bool xe_atomic_for_vram(struct xe_vm *vm, struct xe_vma *vma) in xe_atomic_for_vram() 654 static bool xe_atomic_for_system(struct xe_vm *vm, struct xe_vma *vma) in xe_atomic_for_system() 705 struct xe_vm *vm = xe_vma_vm(vma); in xe_pt_stage_bind() 945 bool xe_pt_zap_ptes_range(struct xe_tile *tile, struct xe_vm *vm, in xe_pt_zap_ptes_range() 1029 struct xe_vm *vm; in xe_pt_commit_prepare_locks_assert() [all …]
|
| H A D | xe_vm_types.h | 26 struct xe_vm; 168 struct xe_vm { struct 456 struct xe_vm *vm;
|
| H A D | xe_pagefault.c | 52 struct xe_vm *vm = xe_vma_vm(vma); in xe_pagefault_begin() 69 struct xe_vm *vm = xe_vma_vm(vma); in xe_pagefault_handle_vma() 142 static struct xe_vm *xe_pagefault_asid_to_vm(struct xe_device *xe, u32 asid) in xe_pagefault_asid_to_vm() 144 struct xe_vm *vm; in xe_pagefault_asid_to_vm() 161 struct xe_vm *vm; in xe_pagefault_service()
|
| H A D | xe_migrate.h | 25 struct xe_vm; 157 struct xe_vm *xe_migrate_get_vm(struct xe_migrate *m);
|
| H A D | xe_exec.c | 102 struct xe_vm *vm = container_of(vm_exec->vm, struct xe_vm, gpuvm); in xe_exec_fn() 127 struct xe_vm *vm; in xe_exec_ioctl()
|
| H A D | xe_migrate.c | 139 static void xe_migrate_program_identity(struct xe_device *xe, struct xe_vm *vm, struct xe_bo *bo, in xe_migrate_program_identity() 185 struct xe_vm *vm, struct drm_exec *exec) in xe_migrate_prepare_vm() 411 static int xe_migrate_lock_prepare_vm(struct xe_tile *tile, struct xe_migrate *m, struct xe_vm *vm) in xe_migrate_lock_prepare_vm() 440 struct xe_vm *vm; in xe_migrate_init() 604 struct xe_vm *vm = m->q->vm; in emit_pte() 1640 struct xe_vm *xe_migrate_get_vm(struct xe_migrate *m) in xe_migrate_get_vm() 1663 struct xe_vm *vm = pt_update->vops->vm; in xe_migrate_update_pgtables_cpu() 1799 struct xe_vm *vm = pt_update->vops->vm; in __xe_migrate_update_pgtables()
|
| H A D | xe_bo.c | 688 struct xe_vm *vm = gpuvm_to_vm(vm_bo->vm); in xe_bo_trigger_rebind() 2312 struct xe_tile *tile, struct xe_vm *vm, in __xe_bo_create_locked() 2410 struct xe_vm *vm, size_t size, in xe_bo_create_locked() 2459 struct xe_vm *vm, size_t size, in xe_bo_create_user() 2533 struct xe_vm *vm, in xe_bo_create_pin_map_at_aligned() 2637 struct xe_vm *vm, size_t size, in xe_bo_create_pin_map() 2945 int xe_bo_validate(struct xe_bo *bo, struct xe_vm *vm, bool allow_res_evict, in xe_bo_validate() 3166 struct xe_vm *vm = NULL; in xe_gem_create_ioctl()
|
| H A D | xe_pm.c | 369 struct xe_vm *vm, *next; in xe_pm_wake_rebind_workers()
|
| H A D | xe_lrc.c | 1005 static void xe_lrc_set_ppgtt(struct xe_lrc *lrc, struct xe_vm *vm) in xe_lrc_set_ppgtt() 1393 struct xe_vm *vm, u32 ring_size, u16 msix_vec, in xe_lrc_init() 1565 struct xe_lrc *xe_lrc_create(struct xe_hw_engine *hwe, struct xe_vm *vm, in xe_lrc_create()
|
| H A D | Makefile | 136 xe_vm.o \
|
| H A D | xe_device.c | 165 struct xe_vm *vm; in xe_file_close()
|
| /linux/drivers/gpu/drm/xe/tests/ |
| H A D | xe_bo.c | 213 struct xe_vm *vm = xe_migrate_get_vm(xe_device_get_root_tile(xe)->migrate); in evict_test_run_tile()
|