| /linux/drivers/gpu/drm/i915/gt/ |
| H A D | gen6_ppgtt.c | 19 static void gen6_write_pde(const struct gen6_ppgtt *ppgtt, in gen6_write_pde() argument 23 dma_addr_t addr = pt ? px_dma(pt) : px_dma(ppgtt->base.vm.scratch[1]); in gen6_write_pde() 27 ppgtt->pd_addr + pde); in gen6_write_pde() 77 struct gen6_ppgtt * const ppgtt = to_gen6_ppgtt(i915_vm_to_ppgtt(vm)); in gen6_ppgtt_clear_range() local 86 i915_pt_entry(ppgtt->base.pd, pde++); in gen6_ppgtt_clear_range() 94 ppgtt->scan_for_unused_pt = true; in gen6_ppgtt_clear_range() 115 struct i915_ppgtt *ppgtt = i915_vm_to_ppgtt(vm); in gen6_ppgtt_insert_entries() local 116 struct i915_page_directory * const pd = ppgtt->pd; in gen6_ppgtt_insert_entries() 150 static void gen6_flush_pd(struct gen6_ppgtt *ppgtt, u64 start, u64 end) in gen6_flush_pd() argument 152 struct i915_page_directory * const pd = ppgtt->base.pd; in gen6_flush_pd() [all …]
|
| H A D | gen8_ppgtt.c | 88 static void gen8_ppgtt_notify_vgt(struct i915_ppgtt *ppgtt, bool create) in gen8_ppgtt_notify_vgt() argument 90 struct drm_i915_private *i915 = ppgtt->vm.i915; in gen8_ppgtt_notify_vgt() 91 struct intel_uncore *uncore = ppgtt->vm.gt->uncore; in gen8_ppgtt_notify_vgt() 96 atomic_inc(px_used(ppgtt->pd)); /* never remove */ in gen8_ppgtt_notify_vgt() 98 atomic_dec(px_used(ppgtt->pd)); in gen8_ppgtt_notify_vgt() 102 if (i915_vm_is_4lvl(&ppgtt->vm)) { in gen8_ppgtt_notify_vgt() 103 const u64 daddr = px_dma(ppgtt->pd); in gen8_ppgtt_notify_vgt() 115 const u64 daddr = i915_page_dir_dma_addr(ppgtt, i); in gen8_ppgtt_notify_vgt() 190 struct i915_ppgtt * const ppgtt = i915_vm_to_ppgtt(vm); in gen8_pdp_for_page_index() local 193 return ppgtt->pd; in gen8_pdp_for_page_index() [all …]
|
| H A D | intel_ppgtt.c | 171 struct i915_ppgtt *ppgtt; in i915_ppgtt_create() local 173 ppgtt = __ppgtt_create(gt, lmem_pt_obj_flags); in i915_ppgtt_create() 174 if (IS_ERR(ppgtt)) in i915_ppgtt_create() 175 return ppgtt; in i915_ppgtt_create() 177 trace_i915_ppgtt_create(&ppgtt->vm); in i915_ppgtt_create() 179 return ppgtt; in i915_ppgtt_create() 307 void ppgtt_init(struct i915_ppgtt *ppgtt, struct intel_gt *gt, in ppgtt_init() argument 312 ppgtt->vm.gt = gt; in ppgtt_init() 313 ppgtt->vm.i915 = i915; in ppgtt_init() 314 ppgtt->vm.dma = i915->drm.dev; in ppgtt_init() [all …]
|
| H A D | intel_lrc_reg.h | 33 #define ASSIGN_CTX_PDP(ppgtt, reg_state, n) do { \ argument 35 const u64 addr__ = i915_page_dir_dma_addr((ppgtt), (n)); \ 40 #define ASSIGN_CTX_PML4(ppgtt, reg_state) do { \ argument 42 const u64 addr__ = px_dma((ppgtt)->pd); \
|
| H A D | selftest_hangcheck.c | 1592 struct i915_ppgtt *ppgtt; in igt_reset_evict_ppgtt() local 1599 ppgtt = i915_ppgtt_create(gt, 0); in igt_reset_evict_ppgtt() 1600 if (IS_ERR(ppgtt)) in igt_reset_evict_ppgtt() 1601 return PTR_ERR(ppgtt); in igt_reset_evict_ppgtt() 1603 err = __igt_reset_evict_vma(gt, &ppgtt->vm, in igt_reset_evict_ppgtt() 1605 i915_vm_put(&ppgtt->vm); in igt_reset_evict_ppgtt()
|
| H A D | intel_execlists_submission.c | 2714 struct i915_ppgtt * const ppgtt = i915_vm_to_ppgtt(rq->context->vm); in emit_pdps() local 2752 const dma_addr_t pd_daddr = i915_page_dir_dma_addr(ppgtt, i); in emit_pdps()
|
| /linux/drivers/gpu/drm/i915/selftests/ |
| H A D | mock_gtt.c | 67 struct i915_ppgtt *ppgtt; in mock_ppgtt() local 69 ppgtt = kzalloc_obj(*ppgtt); in mock_ppgtt() 70 if (!ppgtt) in mock_ppgtt() 73 ppgtt->vm.gt = to_gt(i915); in mock_ppgtt() 74 ppgtt->vm.i915 = i915; in mock_ppgtt() 75 ppgtt->vm.total = round_down(U64_MAX, PAGE_SIZE); in mock_ppgtt() 76 ppgtt->vm.dma = i915->drm.dev; in mock_ppgtt() 78 i915_address_space_init(&ppgtt->vm, VM_CLASS_PPGTT); in mock_ppgtt() 80 ppgtt->vm.alloc_pt_dma = alloc_pt_dma; in mock_ppgtt() 81 ppgtt->vm.alloc_scratch_dma = alloc_pt_dma; in mock_ppgtt() [all …]
|
| H A D | i915_gem_gtt.c | 156 struct i915_ppgtt *ppgtt; in igt_ppgtt_alloc() local 166 ppgtt = i915_ppgtt_create(to_gt(dev_priv), 0); in igt_ppgtt_alloc() 167 if (IS_ERR(ppgtt)) in igt_ppgtt_alloc() 168 return PTR_ERR(ppgtt); in igt_ppgtt_alloc() 170 if (!ppgtt->vm.allocate_va_range) in igt_ppgtt_alloc() 181 limit = min(ppgtt->vm.total, limit); in igt_ppgtt_alloc() 185 err = i915_vm_lock_objects(&ppgtt->vm, &ww); in igt_ppgtt_alloc() 193 err = i915_vm_alloc_pt_stash(&ppgtt->vm, &stash, size); in igt_ppgtt_alloc() 197 err = i915_vm_map_pt_stash(&ppgtt->vm, &stash); in igt_ppgtt_alloc() 199 i915_vm_free_pt_stash(&ppgtt->vm, &stash); in igt_ppgtt_alloc() [all …]
|
| /linux/drivers/gpu/drm/i915/gem/selftests/ |
| H A D | mock_context.c | 37 struct i915_ppgtt *ppgtt; in mock_context() local 41 ppgtt = mock_ppgtt(i915, name); in mock_context() 42 if (!ppgtt) in mock_context() 45 ctx->vm = &ppgtt->vm; in mock_context()
|
| H A D | i915_gem_migrate.c | 375 struct i915_ppgtt *ppgtt; in igt_async_migrate() local 379 ppgtt = i915_ppgtt_create(gt, 0); in igt_async_migrate() 380 if (IS_ERR(ppgtt)) in igt_async_migrate() 381 return PTR_ERR(ppgtt); in igt_async_migrate() 425 err = __igt_lmem_pages_migrate(gt, &ppgtt->vm, &deps, &spin, in igt_async_migrate() 436 i915_vm_put(&ppgtt->vm); in igt_async_migrate()
|
| H A D | huge_pages.c | 424 struct i915_ppgtt *ppgtt = arg; in igt_mock_exhaust_device_supported_pages() local 425 struct drm_i915_private *i915 = ppgtt->vm.i915; in igt_mock_exhaust_device_supported_pages() 461 vma = i915_vma_instance(obj, &ppgtt->vm, NULL); in igt_mock_exhaust_device_supported_pages() 500 struct i915_ppgtt *ppgtt = arg; in igt_mock_memory_region_huge_pages() local 501 struct drm_i915_private *i915 = ppgtt->vm.i915; in igt_mock_memory_region_huge_pages() 529 vma = i915_vma_instance(obj, &ppgtt->vm, NULL); in igt_mock_memory_region_huge_pages() 578 struct i915_ppgtt *ppgtt = arg; in igt_mock_ppgtt_misaligned_dma() local 579 struct drm_i915_private *i915 = ppgtt->vm.i915; in igt_mock_ppgtt_misaligned_dma() 621 vma = i915_vma_instance(obj, &ppgtt->vm, NULL); in igt_mock_ppgtt_misaligned_dma() 1964 struct i915_ppgtt *ppgtt; in i915_gem_huge_page_mock_selftests() local [all …]
|
| /linux/drivers/gpu/drm/i915/gem/ |
| H A D | i915_gem_context.c | 1629 struct i915_ppgtt *ppgtt; in i915_gem_create_context() local 1631 ppgtt = i915_ppgtt_create(to_gt(i915), 0); in i915_gem_create_context() 1632 if (IS_ERR(ppgtt)) { in i915_gem_create_context() 1634 PTR_ERR(ppgtt)); in i915_gem_create_context() 1635 err = PTR_ERR(ppgtt); in i915_gem_create_context() 1638 ppgtt->vm.fpriv = pc->fpriv; in i915_gem_create_context() 1639 vm = &ppgtt->vm; in i915_gem_create_context() 1812 struct i915_ppgtt *ppgtt; in i915_gem_vm_create_ioctl() local 1822 ppgtt = i915_ppgtt_create(to_gt(i915), 0); in i915_gem_vm_create_ioctl() 1823 if (IS_ERR(ppgtt)) in i915_gem_vm_create_ioctl() [all …]
|
| /linux/drivers/gpu/drm/i915/gvt/ |
| H A D | scheduler.h | 131 bool ppgtt; member
|
| H A D | cmd_parser.c | 1928 bb->ppgtt = s->buf_addr_type != GTT_BUFFER; in perform_bb_shadow() 1942 if (bb->ppgtt) in perform_bb_shadow()
|
| /linux/drivers/gpu/drm/xe/ |
| H A D | xe_tlb_inval.c | 329 return xe_tlb_inval_issue(tlb_inval, fence, tlb_inval->ops->ppgtt, in xe_tlb_inval_range()
|