/linux-master/drivers/gpu/drm/i915/gt/ |
H A D | gen6_ppgtt.c | 19 static void gen6_write_pde(const struct gen6_ppgtt *ppgtt, argument 23 dma_addr_t addr = pt ? px_dma(pt) : px_dma(ppgtt->base.vm.scratch[1]); 27 ppgtt->pd_addr + pde); 77 struct gen6_ppgtt * const ppgtt = to_gen6_ppgtt(i915_vm_to_ppgtt(vm)); local 86 i915_pt_entry(ppgtt->base.pd, pde++); 94 ppgtt->scan_for_unused_pt = true; 115 struct i915_ppgtt *ppgtt = i915_vm_to_ppgtt(vm); local 116 struct i915_page_directory * const pd = ppgtt->pd; 150 static void gen6_flush_pd(struct gen6_ppgtt *ppgtt, u64 start, u64 end) argument 152 struct i915_page_directory * const pd = ppgtt 176 struct gen6_ppgtt *ppgtt = to_gen6_ppgtt(i915_vm_to_ppgtt(vm)); local 219 gen6_ppgtt_init_scratch(struct gen6_ppgtt *ppgtt) argument 256 gen6_ppgtt_free_pd(struct gen6_ppgtt *ppgtt) argument 269 struct gen6_ppgtt *ppgtt = to_gen6_ppgtt(i915_vm_to_ppgtt(vm)); local 287 struct gen6_ppgtt *ppgtt = vma_res->private; local 299 struct gen6_ppgtt *ppgtt = vma_res->private; local 326 struct gen6_ppgtt *ppgtt = to_gen6_ppgtt(base); local 380 gen6_alloc_top_pd(struct gen6_ppgtt *ppgtt) argument 421 struct gen6_ppgtt *ppgtt = to_gen6_ppgtt(base); local 431 struct gen6_ppgtt *ppgtt; local [all...] |
H A D | intel_lrc_reg.h | 33 #define ASSIGN_CTX_PDP(ppgtt, reg_state, n) do { \ 35 const u64 addr__ = i915_page_dir_dma_addr((ppgtt), (n)); \ 40 #define ASSIGN_CTX_PML4(ppgtt, reg_state) do { \ 42 const u64 addr__ = px_dma((ppgtt)->pd); \
|
H A D | intel_ppgtt.c | 171 struct i915_ppgtt *ppgtt; local 173 ppgtt = __ppgtt_create(gt, lmem_pt_obj_flags); 174 if (IS_ERR(ppgtt)) 175 return ppgtt; 177 trace_i915_ppgtt_create(&ppgtt->vm); 179 return ppgtt; 307 void ppgtt_init(struct i915_ppgtt *ppgtt, struct intel_gt *gt, argument 312 ppgtt->vm.gt = gt; 313 ppgtt->vm.i915 = i915; 314 ppgtt [all...] |
H A D | gen8_ppgtt.c | 88 static void gen8_ppgtt_notify_vgt(struct i915_ppgtt *ppgtt, bool create) argument 90 struct drm_i915_private *i915 = ppgtt->vm.i915; 91 struct intel_uncore *uncore = ppgtt->vm.gt->uncore; 96 atomic_inc(px_used(ppgtt->pd)); /* never remove */ 98 atomic_dec(px_used(ppgtt->pd)); 102 if (i915_vm_is_4lvl(&ppgtt->vm)) { 103 const u64 daddr = px_dma(ppgtt->pd); 115 const u64 daddr = i915_page_dir_dma_addr(ppgtt, i); 190 struct i915_ppgtt * const ppgtt = i915_vm_to_ppgtt(vm); local 193 return ppgtt 224 struct i915_ppgtt *ppgtt = i915_vm_to_ppgtt(vm); local 455 gen8_ppgtt_insert_pte(struct i915_ppgtt *ppgtt, struct i915_page_directory *pdp, struct sgt_dma *iter, u64 idx, unsigned int pat_index, u32 flags) argument 740 struct i915_ppgtt * const ppgtt = i915_vm_to_ppgtt(vm); local 892 gen8_preallocate_top_level_pdp(struct i915_ppgtt *ppgtt) argument 1006 struct i915_ppgtt *ppgtt; local [all...] |
H A D | selftest_tlb.c | 235 struct i915_ppgtt *ppgtt; local 277 ppgtt = i915_ppgtt_create(gt, 0); 278 if (IS_ERR(ppgtt)) { 279 err = PTR_ERR(ppgtt); 283 va = i915_vma_instance(A, &ppgtt->vm, NULL); 289 vb = i915_vma_instance(B, &ppgtt->vm, NULL); 308 ce->vm = i915_vm_get(&ppgtt->vm); 355 i915_vm_put(&ppgtt->vm);
|
H A D | intel_ggtt.c | 956 struct i915_ppgtt *ppgtt; local 959 ppgtt = i915_ppgtt_create(ggtt->vm.gt, 0); 960 if (IS_ERR(ppgtt)) 961 return PTR_ERR(ppgtt); 963 if (GEM_WARN_ON(ppgtt->vm.total < ggtt->vm.total)) { 968 err = i915_vm_alloc_pt_stash(&ppgtt->vm, &stash, ggtt->vm.total); 972 i915_gem_object_lock(ppgtt->vm.scratch[0], NULL); 973 err = i915_vm_map_pt_stash(&ppgtt->vm, &stash); 974 i915_gem_object_unlock(ppgtt->vm.scratch[0]); 984 ppgtt 1007 struct i915_ppgtt *ppgtt; local [all...] |
H A D | intel_gtt.h | 576 i915_page_dir_dma_addr(const struct i915_ppgtt *ppgtt, const unsigned int n) argument 578 struct i915_page_table *pt = ppgtt->pd->entry[n]; 580 return __px_dma(pt ? px_base(pt) : ppgtt->vm.scratch[ppgtt->vm.top]); 583 void ppgtt_init(struct i915_ppgtt *ppgtt, struct intel_gt *gt,
|
H A D | intel_lrc.c | 928 static void init_ppgtt_regs(u32 *regs, const struct i915_ppgtt *ppgtt) argument 930 if (i915_vm_is_4lvl(&ppgtt->vm)) { 935 ASSIGN_CTX_PML4(ppgtt, regs); 937 ASSIGN_CTX_PDP(ppgtt, regs, 3); 938 ASSIGN_CTX_PDP(ppgtt, regs, 2); 939 ASSIGN_CTX_PDP(ppgtt, regs, 1); 940 ASSIGN_CTX_PDP(ppgtt, regs, 0);
|
H A D | selftest_hangcheck.c | 1592 struct i915_ppgtt *ppgtt; local 1599 ppgtt = i915_ppgtt_create(gt, 0); 1600 if (IS_ERR(ppgtt)) 1601 return PTR_ERR(ppgtt); 1603 err = __igt_reset_evict_vma(gt, &ppgtt->vm, 1605 i915_vm_put(&ppgtt->vm);
|
H A D | intel_gtt.c | 108 * Applying a write barrier to the ppgtt set entry functions appeared 132 * Applying a write barrier to the ppgtt set entry functions appeared 204 struct i915_ppgtt *ppgtt = i915_vm_to_ppgtt(vm); local 207 return i915_gem_object_lock(ppgtt->pd->pt.base, ww);
|
H A D | intel_execlists_submission.c | 20 * contained there mean you don't need to do a ppgtt->switch_mm yourself, 2717 struct i915_ppgtt * const ppgtt = i915_vm_to_ppgtt(rq->context->vm); local 2755 const dma_addr_t pd_daddr = i915_page_dir_dma_addr(ppgtt, i);
|
/linux-master/drivers/gpu/drm/i915/selftests/ |
H A D | mock_gtt.c | 67 struct i915_ppgtt *ppgtt; local 69 ppgtt = kzalloc(sizeof(*ppgtt), GFP_KERNEL); 70 if (!ppgtt) 73 ppgtt->vm.gt = to_gt(i915); 74 ppgtt->vm.i915 = i915; 75 ppgtt->vm.total = round_down(U64_MAX, PAGE_SIZE); 76 ppgtt->vm.dma = i915->drm.dev; 78 i915_address_space_init(&ppgtt->vm, VM_CLASS_PPGTT); 80 ppgtt [all...] |
H A D | i915_gem_gtt.c | 156 struct i915_ppgtt *ppgtt; local 166 ppgtt = i915_ppgtt_create(to_gt(dev_priv), 0); 167 if (IS_ERR(ppgtt)) 168 return PTR_ERR(ppgtt); 170 if (!ppgtt->vm.allocate_va_range) 181 limit = min(ppgtt->vm.total, limit); 185 err = i915_vm_lock_objects(&ppgtt->vm, &ww); 193 err = i915_vm_alloc_pt_stash(&ppgtt->vm, &stash, size); 197 err = i915_vm_map_pt_stash(&ppgtt->vm, &stash); 199 i915_vm_free_pt_stash(&ppgtt 1195 struct i915_ppgtt *ppgtt; local [all...] |
/linux-master/drivers/gpu/drm/i915/gem/selftests/ |
H A D | mock_context.c | 37 struct i915_ppgtt *ppgtt; local 41 ppgtt = mock_ppgtt(i915, name); 42 if (!ppgtt) 45 ctx->vm = &ppgtt->vm;
|
H A D | i915_gem_migrate.c | 375 struct i915_ppgtt *ppgtt; local 379 ppgtt = i915_ppgtt_create(gt, 0); 380 if (IS_ERR(ppgtt)) 381 return PTR_ERR(ppgtt); 425 err = __igt_lmem_pages_migrate(gt, &ppgtt->vm, &deps, &spin, 436 i915_vm_put(&ppgtt->vm);
|
H A D | huge_pages.c | 424 struct i915_ppgtt *ppgtt = arg; local 425 struct drm_i915_private *i915 = ppgtt->vm.i915; 461 vma = i915_vma_instance(obj, &ppgtt->vm, NULL); 500 struct i915_ppgtt *ppgtt = arg; local 501 struct drm_i915_private *i915 = ppgtt->vm.i915; 529 vma = i915_vma_instance(obj, &ppgtt->vm, NULL); 578 struct i915_ppgtt *ppgtt = arg; local 579 struct drm_i915_private *i915 = ppgtt->vm.i915; 621 vma = i915_vma_instance(obj, &ppgtt->vm, NULL); 1973 struct i915_ppgtt *ppgtt; local [all...] |
/linux-master/drivers/gpu/drm/i915/gvt/ |
H A D | scheduler.h | 131 bool ppgtt; member in struct:intel_vgpu_shadow_bb
|
H A D | scheduler.c | 438 struct i915_ppgtt *ppgtt = i915_vm_to_ppgtt(ce->vm); local 442 set_dma_address(ppgtt->pd, mm->ppgtt_mm.shadow_pdps[0]); 446 i915_pd_entry(ppgtt->pd, i); 447 /* skip now as current i915 ppgtt alloc won't allocate 449 shadow ppgtt. */ 551 if (!bb->ppgtt) { 699 gvt_vgpu_err("workload shadow ppgtt isn't ready\n"); 712 gvt_vgpu_err("LRI shadow ppgtt fail to pin\n"); 925 gvt_dbg_mm("4-level context ppgtt not match LRI command\n"); 1295 struct i915_ppgtt *ppgtt) 1294 i915_context_ppgtt_root_restore(struct intel_vgpu_submission *s, struct i915_ppgtt *ppgtt) argument 1355 i915_context_ppgtt_root_save(struct intel_vgpu_submission *s, struct i915_ppgtt *ppgtt) argument 1387 struct i915_ppgtt *ppgtt; local [all...] |
H A D | cmd_parser.c | 1726 /* Check post-sync and ppgtt bit */ 1805 return type == PPGTT_BUFFER ? "ppgtt" : "ggtt"; 1918 bb->ppgtt = (s->buf_addr_type == GTT_BUFFER) ? false : true; 1931 if (bb->ppgtt)
|
/linux-master/drivers/gpu/drm/i915/gem/ |
H A D | i915_gem_context.c | 1522 * the ppgtt). 1618 struct i915_ppgtt *ppgtt; local 1620 ppgtt = i915_ppgtt_create(to_gt(i915), 0); 1621 if (IS_ERR(ppgtt)) { 1623 PTR_ERR(ppgtt)); 1624 err = PTR_ERR(ppgtt); 1627 ppgtt->vm.fpriv = pc->fpriv; 1628 vm = &ppgtt->vm; 1744 /* 0 reserved for invalid/unassigned ppgtt */ 1800 struct i915_ppgtt *ppgtt; local [all...] |