| /linux-6.15/drivers/gpu/drm/xe/ |
| H A D | xe_gt_pagefault.c | 90 vma = vm->usm.last_fault_vma; in lookup_vma() 197 down_read(&xe->usm.lock); in asid_to_vm() 203 up_read(&xe->usm.lock); in asid_to_vm() 250 vm->usm.last_fault_vma = vma; in handle_pagefault() 405 queue_work(gt->usm.pf_wq, w); in pf_queue_work_func() 475 gt->usm.acc_queue[i].gt = gt; in xe_gt_pagefault_init() 482 if (!gt->usm.pf_wq) in xe_gt_pagefault_init() 488 if (!gt->usm.acc_wq) { in xe_gt_pagefault_init() 506 gt->usm.pf_queue[i].head = 0; in xe_gt_pagefault_reset() 507 gt->usm.pf_queue[i].tail = 0; in xe_gt_pagefault_reset() [all …]
|
| H A D | xe_bb.c | 32 struct xe_bb *xe_bb_new(struct xe_gt *gt, u32 dwords, bool usm) in xe_bb_new() argument 47 bb->bo = xe_sa_bo_new(!usm ? tile->mem.kernel_bb_pool : gt->usm.bb_pool, in xe_bb_new()
|
| H A D | xe_svm.c | 66 (operaton__), range_to_vm(&(r__)->base)->usm.asid, \ 126 queue_work(xe_device_get_root_tile(xe)->primary_gt->usm.pf_wq, in xe_svm_garbage_collector_add_range() 203 vm->usm.asid, gpusvm, notifier->notifier.invalidate_seq, in xe_svm_invalidate() 253 vm->usm.asid); in xe_svm_invalidate() 268 vm->usm.asid); in xe_svm_invalidate() 829 vm->usm.asid, ERR_PTR(err)); in xe_svm_handle_pagefault() 834 vm->usm.asid, ERR_PTR(err)); in xe_svm_handle_pagefault() 853 vm->usm.asid, &vm->svm.gpusvm, ERR_PTR(err)); in xe_svm_handle_pagefault() 859 vm->usm.asid, &vm->svm.gpusvm, ERR_PTR(err)); in xe_svm_handle_pagefault()
|
| H A D | xe_migrate.c | 253 batch = tile->primary_gt->usm.bb_pool->bo; in xe_migrate_prepare_vm() 274 batch = tile->primary_gt->usm.bb_pool->bo; in xe_migrate_prepare_vm() 819 bool usm = xe->info.has_usm; in xe_migrate_copy() local 854 bb = xe_bb_new(gt, batch_size, usm); in xe_migrate_copy() 889 xe_migrate_batch_base(m, usm), in xe_migrate_copy() 1090 bool usm = xe->info.has_usm; in xe_migrate_clear() local 1111 bb = xe_bb_new(gt, batch_size, usm); in xe_migrate_clear() 1138 xe_migrate_batch_base(m, usm), in xe_migrate_clear() 1325 bool usm = is_migrate && xe->info.has_usm; in __xe_migrate_update_pgtables() local 1348 bb = xe_bb_new(gt, batch_size, usm); in __xe_migrate_update_pgtables() [all …]
|
| H A D | xe_bb.h | 17 struct xe_bb *xe_bb_new(struct xe_gt *gt, u32 size, bool usm);
|
| H A D | xe_trace_bo.h | 106 __entry->asid = xe_vma_vm(vma)->usm.asid; 202 __entry->asid = vm->usm.asid;
|
| H A D | xe_device.c | 453 init_rwsem(&xe->usm.lock); in xe_device_create() 455 xa_init_flags(&xe->usm.asid_to_vm, XA_FLAGS_ALLOC); in xe_device_create() 462 err = xa_alloc_cyclic(&xe->usm.asid_to_vm, &asid, NULL, in xe_device_create() 464 &xe->usm.next_asid, GFP_KERNEL); in xe_device_create() 467 xa_erase(&xe->usm.asid_to_vm, asid); in xe_device_create()
|
| H A D | xe_gt.h | 120 hwe->instance == gt->usm.reserved_bcs_instance; in xe_gt_is_usm_hwe()
|
| H A D | xe_gt_types.h | 305 } usm; member
|
| H A D | xe_gt_tlb_invalidation.c | 436 ret = xe_gt_tlb_invalidation_range(gt, &fence, 0, range, vm->usm.asid); in xe_gt_tlb_invalidation_vm() 464 xe_vma_vm(vma)->usm.asid); in xe_gt_tlb_invalidation_vma()
|
| H A D | xe_vm_types.h | 300 } usm; member
|
| H A D | xe_gt.c | 484 gt->usm.bb_pool = xe_sa_bo_manager_init(gt_to_tile(gt), in all_fw_domain_init() 486 if (IS_ERR(gt->usm.bb_pool)) { in all_fw_domain_init() 487 err = PTR_ERR(gt->usm.bb_pool); in all_fw_domain_init()
|
| H A D | xe_vm.c | 1412 if (vm->usm.last_fault_vma == vma) in xe_vm_remove_vma() 1413 vm->usm.last_fault_vma = NULL; in xe_vm_remove_vma() 1921 down_write(&xe->usm.lock); in xe_vm_close_and_put() 1922 if (vm->usm.asid) { in xe_vm_close_and_put() 1928 lookup = xa_erase(&xe->usm.asid_to_vm, vm->usm.asid); in xe_vm_close_and_put() 1931 up_write(&xe->usm.lock); in xe_vm_close_and_put() 2071 down_write(&xe->usm.lock); in xe_vm_create_ioctl() 2072 err = xa_alloc_cyclic(&xe->usm.asid_to_vm, &asid, vm, in xe_vm_create_ioctl() 2074 &xe->usm.next_asid, GFP_KERNEL); in xe_vm_create_ioctl() 2075 up_write(&xe->usm.lock); in xe_vm_create_ioctl() [all …]
|
| H A D | xe_device_types.h | 417 } usm; member
|
| H A D | xe_hw_engine.c | 635 gt->usm.reserved_bcs_instance = hwe->instance; in hw_engine_init() 990 hwe->instance == gt->usm.reserved_bcs_instance; in xe_hw_engine_is_reserved()
|
| H A D | xe_exec_queue.c | 262 gt->usm.reserved_bcs_instance, in xe_exec_queue_create_bind()
|
| H A D | xe_pt.c | 2381 pt_update_ops->last, vm->usm.asid); in xe_pt_update_ops_run() 2385 pt_update_ops->last, vm->usm.asid); in xe_pt_update_ops_run()
|
| H A D | xe_lrc.c | 1100 xe_lrc_write_ctx_reg(lrc, PVC_CTX_ASID, vm->usm.asid); in xe_lrc_init()
|
| /linux-6.15/arch/powerpc/mm/ |
| H A D | drmem.c | 229 ret = func(&lmb, &usm, data); in __walk_drmem_v1_lmbs() 275 ret = func(&lmb, &usm, data); in __walk_drmem_v2_lmbs() 288 const __be32 *prop, *usm; in walk_drmem_lmbs_early() local 301 usm = of_get_flat_dt_prop(node, "linux,drconf-usable-memory", &len); in walk_drmem_lmbs_early() 305 ret = __walk_drmem_v1_lmbs(prop, usm, data, func); in walk_drmem_lmbs_early() 310 ret = __walk_drmem_v2_lmbs(prop, usm, data, func); in walk_drmem_lmbs_early() 321 __maybe_unused const __be32 **usm, in update_lmb() argument 397 const __be32 *prop, *usm; in walk_drmem_lmbs() local 411 usm = of_get_usable_memory(dn); in walk_drmem_lmbs() 415 ret = __walk_drmem_v1_lmbs(prop, usm, data, func); in walk_drmem_lmbs() [all …]
|
| H A D | numa.c | 833 static inline int __init read_usm_ranges(const __be32 **usm) in read_usm_ranges() argument 841 return read_n_cells(n_mem_size_cells, usm); in read_usm_ranges() 849 const __be32 **usm, in numa_setup_drmem_lmb() argument 864 if (*usm) in numa_setup_drmem_lmb() 872 ranges = read_usm_ranges(usm); in numa_setup_drmem_lmb() 879 base = read_n_cells(n_mem_addr_cells, usm); in numa_setup_drmem_lmb() 880 size = read_n_cells(n_mem_size_cells, usm); in numa_setup_drmem_lmb()
|
| /linux-6.15/arch/powerpc/kernel/ |
| H A D | prom.c | 529 const __be32 **usm, in early_init_drmem_lmb() argument 547 if (*usm) in early_init_drmem_lmb() 558 rngs = dt_mem_next_cell(dt_root_size_cells, usm); in early_init_drmem_lmb() 565 base = dt_mem_next_cell(dt_root_addr_cells, usm); in early_init_drmem_lmb() 566 size = dt_mem_next_cell(dt_root_size_cells, usm); in early_init_drmem_lmb()
|
| /linux-6.15/arch/powerpc/kexec/ |
| H A D | file_load_64.c | 147 static int kdump_setup_usable_lmb(struct drmem_lmb *lmb, const __be32 **usm, in kdump_setup_usable_lmb() argument 158 if (*usm) { in kdump_setup_usable_lmb()
|