/linux/drivers/gpu/drm/xe/ |
H A D | xe_gt_pagefault.c | 90 vma = vm->usm.last_fault_vma; in lookup_vma() 146 mutex_lock(&xe->usm.lock); in handle_pagefault() 152 mutex_unlock(&xe->usm.lock); in handle_pagefault() 234 vm->usm.last_fault_vma = vma; in handle_pagefault() 414 gt->usm.pf_queue[i].gt = gt; in xe_gt_pagefault_init() 419 gt->usm.acc_queue[i].gt = gt; in xe_gt_pagefault_init() 426 if (!gt->usm.pf_wq) in xe_gt_pagefault_init() 432 if (!gt->usm.acc_wq) in xe_gt_pagefault_init() 448 gt->usm.pf_queue[i].head = 0; in xe_gt_pagefault_reset() 521 mutex_lock(&xe->usm.lock); in handle_acc() [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_migrate.c | 197 batch = tile->primary_gt->usm.bb_pool->bo; in xe_migrate_prepare_vm() 218 batch = tile->primary_gt->usm.bb_pool->bo; in xe_migrate_prepare_vm() 359 primary_gt->usm.reserved_bcs_instance, in xe_migrate_init() 745 bool usm = xe->info.has_usm; in xe_migrate_copy() local 777 bb = xe_bb_new(gt, batch_size, usm); in xe_migrate_copy() 812 xe_migrate_batch_base(m, usm), in xe_migrate_copy() 1001 bool usm = xe->info.has_usm; in xe_migrate_clear() local 1021 bb = xe_bb_new(gt, batch_size, usm); in xe_migrate_clear() 1049 xe_migrate_batch_base(m, usm), in xe_migrate_clear() 1286 bool usm = !q && xe->info.has_usm; in xe_migrate_update_pgtables() local [all …]
|
H A D | xe_device.h | 140 return xe->usm.num_vm_in_fault_mode != 0; in xe_device_in_fault_mode() 145 return xe->usm.num_vm_in_non_fault_mode != 0; in xe_device_in_non_fault_mode()
|
H A D | xe_device.c | 272 drmm_mutex_init(&xe->drm, &xe->usm.lock); in xe_device_create() 273 xa_init_flags(&xe->usm.asid_to_vm, XA_FLAGS_ALLOC); in xe_device_create() 280 err = xa_alloc_cyclic(&xe->usm.asid_to_vm, &asid, NULL, in xe_device_create() 282 &xe->usm.next_asid, GFP_KERNEL); in xe_device_create() 285 xa_erase(&xe->usm.asid_to_vm, asid); in xe_device_create()
|
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_gt.h | 71 hwe->instance == gt->usm.reserved_bcs_instance; in xe_gt_is_usm_hwe()
|
H A D | xe_vm.c | 1023 vm->usm.last_fault_vma = NULL; in xe_vm_remove_vma() 1351 mutex_lock(&xe->usm.lock); in xe_vm_create() 1353 xe->usm.num_vm_in_fault_mode++; in xe_vm_create() 1356 mutex_unlock(&xe->usm.lock); in xe_vm_create() 1469 mutex_lock(&xe->usm.lock); in xe_vm_close_and_put() 1475 if (vm->usm.asid) { in xe_vm_close_and_put() 1481 lookup = xa_erase(&xe->usm.asid_to_vm, vm->usm.asid); in xe_vm_close_and_put() 1484 mutex_unlock(&xe->usm.lock); in xe_vm_close_and_put() 1870 mutex_lock(&xe->usm.lock); in xe_vm_create_ioctl() 1874 mutex_unlock(&xe->usm.lock); in xe_vm_create_ioctl() [all …]
|
H A D | xe_gt_types.h | 278 } usm; member
|
H A D | xe_vm_types.h | 249 } usm; member
|
H A D | xe_gt.c | 444 gt->usm.bb_pool = xe_sa_bo_manager_init(gt_to_tile(gt), in all_fw_domain_init() 446 if (IS_ERR(gt->usm.bb_pool)) { in all_fw_domain_init() 447 err = PTR_ERR(gt->usm.bb_pool); in all_fw_domain_init()
|
H A D | xe_device_types.h | 353 } usm; member
|
H A D | xe_trace.h | 400 __entry->asid = xe_vma_vm(vma)->usm.asid; 497 __entry->asid = vm->usm.asid;
|
H A D | xe_gt_tlb_invalidation.c | 341 action[len++] = xe_vma_vm(vma)->usm.asid; in xe_gt_tlb_invalidation_vma()
|
H A D | xe_hw_engine.c | 551 gt->usm.reserved_bcs_instance = hwe->instance; in hw_engine_init() 956 hwe->instance == gt->usm.reserved_bcs_instance; in xe_hw_engine_is_reserved()
|
H A D | xe_lrc.c | 795 xe_lrc_write_ctx_reg(lrc, PVC_CTX_ASID, vm->usm.asid); in xe_lrc_init()
|
/linux/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 | 835 static inline int __init read_usm_ranges(const __be32 **usm) in read_usm_ranges() argument 843 return read_n_cells(n_mem_size_cells, usm); in read_usm_ranges() 851 const __be32 **usm, in numa_setup_drmem_lmb() argument 866 if (*usm) in numa_setup_drmem_lmb() 874 ranges = read_usm_ranges(usm); in numa_setup_drmem_lmb() 881 base = read_n_cells(n_mem_addr_cells, usm); in numa_setup_drmem_lmb() 882 size = read_n_cells(n_mem_size_cells, usm); in numa_setup_drmem_lmb()
|
/linux/arch/powerpc/kernel/ |
H A D | prom.c | 522 const __be32 **usm, in early_init_drmem_lmb() argument 540 if (*usm) in early_init_drmem_lmb() 551 rngs = dt_mem_next_cell(dt_root_size_cells, usm); in early_init_drmem_lmb() 558 base = dt_mem_next_cell(dt_root_addr_cells, usm); in early_init_drmem_lmb() 559 size = dt_mem_next_cell(dt_root_size_cells, usm); in early_init_drmem_lmb()
|
/linux/arch/powerpc/kexec/ |
H A D | file_load_64.c | 329 static int kdump_setup_usable_lmb(struct drmem_lmb *lmb, const __be32 **usm, in kdump_setup_usable_lmb() argument 340 if (*usm) { in kdump_setup_usable_lmb()
|