/Linux-v5.4/drivers/gpu/drm/i915/selftests/ |
D | mock_gtt.c | 60 struct i915_ppgtt *ppgtt; in mock_ppgtt() local 62 ppgtt = kzalloc(sizeof(*ppgtt), GFP_KERNEL); in mock_ppgtt() 63 if (!ppgtt) in mock_ppgtt() 66 ppgtt->vm.i915 = i915; in mock_ppgtt() 67 ppgtt->vm.total = round_down(U64_MAX, PAGE_SIZE); in mock_ppgtt() 68 ppgtt->vm.file = ERR_PTR(-ENODEV); in mock_ppgtt() 70 i915_address_space_init(&ppgtt->vm, VM_CLASS_PPGTT); in mock_ppgtt() 72 ppgtt->vm.clear_range = nop_clear_range; in mock_ppgtt() 73 ppgtt->vm.insert_page = mock_insert_page; in mock_ppgtt() 74 ppgtt->vm.insert_entries = mock_insert_entries; in mock_ppgtt() [all …]
|
D | i915_gem_gtt.c | 151 struct i915_ppgtt *ppgtt; in igt_ppgtt_alloc() local 160 ppgtt = __ppgtt_create(dev_priv); in igt_ppgtt_alloc() 161 if (IS_ERR(ppgtt)) in igt_ppgtt_alloc() 162 return PTR_ERR(ppgtt); in igt_ppgtt_alloc() 164 if (!ppgtt->vm.allocate_va_range) in igt_ppgtt_alloc() 175 limit = min(ppgtt->vm.total, limit); in igt_ppgtt_alloc() 179 err = ppgtt->vm.allocate_va_range(&ppgtt->vm, 0, size); in igt_ppgtt_alloc() 191 ppgtt->vm.clear_range(&ppgtt->vm, 0, size); in igt_ppgtt_alloc() 196 err = ppgtt->vm.allocate_va_range(&ppgtt->vm, in igt_ppgtt_alloc() 211 i915_vm_put(&ppgtt->vm); in igt_ppgtt_alloc() [all …]
|
/Linux-v5.4/drivers/gpu/drm/i915/ |
D | i915_gem_gtt.c | 825 static void mark_tlbs_dirty(struct i915_ppgtt *ppgtt) in mark_tlbs_dirty() argument 827 ppgtt->pd_dirty_engines = ALL_ENGINES; in mark_tlbs_dirty() 830 static void gen8_ppgtt_notify_vgt(struct i915_ppgtt *ppgtt, bool create) in gen8_ppgtt_notify_vgt() argument 832 struct drm_i915_private *dev_priv = ppgtt->vm.i915; in gen8_ppgtt_notify_vgt() 837 atomic_inc(px_used(ppgtt->pd)); /* never remove */ in gen8_ppgtt_notify_vgt() 839 atomic_dec(px_used(ppgtt->pd)); in gen8_ppgtt_notify_vgt() 843 if (i915_vm_is_4lvl(&ppgtt->vm)) { in gen8_ppgtt_notify_vgt() 844 const u64 daddr = px_dma(ppgtt->pd); in gen8_ppgtt_notify_vgt() 853 const u64 daddr = i915_page_dir_dma_addr(ppgtt, i); in gen8_ppgtt_notify_vgt() 920 struct i915_ppgtt * const ppgtt = i915_vm_to_ppgtt(vm); in gen8_pdp_for_page_index() local [all …]
|
D | i915_gem_gtt.h | 531 i915_page_dir_dma_addr(const struct i915_ppgtt *ppgtt, const unsigned int n) in i915_page_dir_dma_addr() argument 533 struct i915_page_dma *pt = ppgtt->pd->entry[n]; in i915_page_dir_dma_addr() 535 return px_dma(pt ?: px_base(&ppgtt->vm.scratch[ppgtt->vm.top])); in i915_page_dir_dma_addr()
|
/Linux-v5.4/drivers/gpu/drm/i915/gem/selftests/ |
D | mock_context.c | 41 struct i915_ppgtt *ppgtt; in mock_context() local 47 ppgtt = mock_ppgtt(i915, name); in mock_context() 48 if (!ppgtt) in mock_context() 51 __set_ppgtt(ctx, &ppgtt->vm); in mock_context() 52 i915_vm_put(&ppgtt->vm); in mock_context()
|
D | huge_pages.c | 373 struct i915_ppgtt *ppgtt = arg; in igt_mock_exhaust_device_supported_pages() local 374 struct drm_i915_private *i915 = ppgtt->vm.i915; in igt_mock_exhaust_device_supported_pages() 410 vma = i915_vma_instance(obj, &ppgtt->vm, NULL); in igt_mock_exhaust_device_supported_pages() 452 struct i915_ppgtt *ppgtt = arg; in igt_mock_ppgtt_misaligned_dma() local 453 struct drm_i915_private *i915 = ppgtt->vm.i915; in igt_mock_ppgtt_misaligned_dma() 495 vma = i915_vma_instance(obj, &ppgtt->vm, NULL); in igt_mock_ppgtt_misaligned_dma() 580 struct i915_ppgtt *ppgtt) in close_object_list() argument 587 vma = i915_vma_instance(obj, &ppgtt->vm, NULL); in close_object_list() 600 struct i915_ppgtt *ppgtt = arg; in igt_mock_ppgtt_huge_fill() local 601 struct drm_i915_private *i915 = ppgtt->vm.i915; in igt_mock_ppgtt_huge_fill() [all …]
|
/Linux-v5.4/drivers/gpu/drm/i915/gt/ |
D | intel_lrc_reg.h | 49 #define ASSIGN_CTX_PDP(ppgtt, reg_state, n) do { \ argument 51 const u64 addr__ = i915_page_dir_dma_addr((ppgtt), (n)); \ 56 #define ASSIGN_CTX_PML4(ppgtt, reg_state) do { \ argument 58 const u64 addr__ = px_dma(ppgtt->pd); \
|
D | intel_ringbuffer.c | 1528 static int load_pd_dir(struct i915_request *rq, const struct i915_ppgtt *ppgtt) in load_pd_dir() argument 1543 *cs++ = px_base(ppgtt->pd)->ggtt_offset << 10; in load_pd_dir() 1753 struct i915_ppgtt *ppgtt = i915_vm_to_ppgtt(vm); in switch_context() local 1770 ret = load_pd_dir(rq, ppgtt); in switch_context() 1775 if (ppgtt->pd_dirty_engines & engine->mask) { in switch_context() 1777 ppgtt->pd_dirty_engines &= ~unwind_mm; in switch_context()
|
D | intel_lrc.c | 1903 struct i915_ppgtt * const ppgtt = i915_vm_to_ppgtt(rq->hw_context->vm); in emit_pdps() local 1933 const dma_addr_t pd_daddr = i915_page_dir_dma_addr(ppgtt, i); in emit_pdps() 3183 struct i915_ppgtt *ppgtt = i915_vm_to_ppgtt(ce->vm); in execlists_init_reg_state() local 3258 if (i915_vm_is_4lvl(&ppgtt->vm)) { in execlists_init_reg_state() 3263 ASSIGN_CTX_PML4(ppgtt, regs); in execlists_init_reg_state() 3265 ASSIGN_CTX_PDP(ppgtt, regs, 3); in execlists_init_reg_state() 3266 ASSIGN_CTX_PDP(ppgtt, regs, 2); in execlists_init_reg_state() 3267 ASSIGN_CTX_PDP(ppgtt, regs, 1); in execlists_init_reg_state() 3268 ASSIGN_CTX_PDP(ppgtt, regs, 0); in execlists_init_reg_state()
|
/Linux-v5.4/drivers/gpu/drm/i915/gem/ |
D | i915_gem_context.c | 541 struct i915_ppgtt *ppgtt; in i915_gem_create_context() local 543 ppgtt = i915_ppgtt_create(dev_priv); in i915_gem_create_context() 544 if (IS_ERR(ppgtt)) { in i915_gem_create_context() 546 PTR_ERR(ppgtt)); in i915_gem_create_context() 548 return ERR_CAST(ppgtt); in i915_gem_create_context() 551 __assign_ppgtt(ctx, &ppgtt->vm); in i915_gem_create_context() 552 i915_vm_put(&ppgtt->vm); in i915_gem_create_context() 770 struct i915_ppgtt *ppgtt; in i915_gem_vm_create_ioctl() local 779 ppgtt = i915_ppgtt_create(i915); in i915_gem_vm_create_ioctl() 780 if (IS_ERR(ppgtt)) in i915_gem_vm_create_ioctl() [all …]
|
/Linux-v5.4/drivers/gpu/drm/i915/gvt/ |
D | scheduler.c | 368 struct i915_ppgtt *ppgtt = i915_vm_to_ppgtt(ctx->vm); in set_context_ppgtt_from_shadow() local 372 px_dma(ppgtt->pd) = mm->ppgtt_mm.shadow_pdps[0]; in set_context_ppgtt_from_shadow() 376 i915_pd_entry(ppgtt->pd, i); in set_context_ppgtt_from_shadow() 468 if (bb->ppgtt) { in prepare_shadow_batch_buffer() 1143 struct i915_ppgtt *ppgtt) in i915_context_ppgtt_root_restore() argument 1147 if (i915_vm_is_4lvl(&ppgtt->vm)) { in i915_context_ppgtt_root_restore() 1148 px_dma(ppgtt->pd) = s->i915_context_pml4; in i915_context_ppgtt_root_restore() 1152 i915_pd_entry(ppgtt->pd, i); in i915_context_ppgtt_root_restore() 1204 struct i915_ppgtt *ppgtt) in i915_context_ppgtt_root_save() argument 1208 if (i915_vm_is_4lvl(&ppgtt->vm)) { in i915_context_ppgtt_root_save() [all …]
|
D | scheduler.h | 129 bool ppgtt; member
|
D | cmd_parser.c | 1842 bb->ppgtt = (s->buf_addr_type == GTT_BUFFER) ? false : true; in perform_bb_shadow() 1855 if (bb->ppgtt) in perform_bb_shadow()
|