/linux-6.3-rc2/drivers/gpu/drm/i915/gt/ |
A D | intel_ggtt.c | 68 ggtt->vm.cleanup(&ggtt->vm); in ggtt_init_hw() 177 ggtt->invalidate(ggtt); in i915_ggtt_suspend() 252 ggtt->invalidate(ggtt); in gen8_ggtt_insert_page() 291 ggtt->invalidate(ggtt); in gen8_ggtt_insert_entries() 306 ggtt->invalidate(ggtt); in gen6_ggtt_insert_page() 345 ggtt->invalidate(ggtt); in gen6_ggtt_insert_entries() 590 ggtt->vm.clear_range(&ggtt->vm, ggtt->vm.total - PAGE_SIZE, PAGE_SIZE); in init_ggtt() 745 ggtt->vm.cleanup(&ggtt->vm); in ggtt_cleanup_hw() 1144 &ggtt->mappable_end, ggtt->vm.total); in ggtt_probe_hw() 1145 ggtt->mappable_end = ggtt->vm.total; in ggtt_probe_hw() [all …]
|
A D | intel_ggtt_gmch.c | 79 struct drm_i915_private *i915 = ggtt->vm.i915; in intel_ggtt_gmch_probe() 89 intel_gmch_gtt_get(&ggtt->vm.total, &gmadr_base, &ggtt->mappable_end); in intel_ggtt_gmch_probe() 91 ggtt->gmadr = DEFINE_RES_MEM(gmadr_base, ggtt->mappable_end); in intel_ggtt_gmch_probe() 93 ggtt->vm.alloc_pt_dma = alloc_pt_dma; in intel_ggtt_gmch_probe() 94 ggtt->vm.alloc_scratch_dma = alloc_pt_dma; in intel_ggtt_gmch_probe() 99 ggtt->do_idle_maps = true; in intel_ggtt_gmch_probe() 102 ggtt->vm.insert_page = gmch_ggtt_insert_page; in intel_ggtt_gmch_probe() 104 ggtt->vm.clear_range = gmch_ggtt_clear_range; in intel_ggtt_gmch_probe() 105 ggtt->vm.cleanup = gmch_ggtt_remove; in intel_ggtt_gmch_probe() 107 ggtt->invalidate = gmch_ggtt_invalidate; in intel_ggtt_gmch_probe() [all …]
|
A D | intel_ggtt_fencing.c | 51 return fence->ggtt->vm.i915; in fence_to_i915() 56 return fence->ggtt->vm.gt->uncore; in fence_to_uncore() 203 struct i915_ggtt *ggtt = fence->ggtt; in fence_update() local 380 fence = fence_find(ggtt); in __i915_vma_pin_fence() 469 fence = fence_find(ggtt); in i915_reserve_fence() 493 struct i915_ggtt *ggtt = fence->ggtt; in i915_unreserve_fence() local 848 detect_bit_6_swizzle(ggtt); in intel_ggtt_init_fences() 868 if (!ggtt->fence_regs) in intel_ggtt_init_fences() 876 fence->ggtt = ggtt; in intel_ggtt_init_fences() 880 ggtt->num_fences = num_fences; in intel_ggtt_init_fences() [all …]
|
A D | selftest_reset.c | 22 struct i915_ggtt *ggtt = gt->ggtt; in __igt_reset_stolen() local 87 ggtt->vm.insert_page(&ggtt->vm, dma, in __igt_reset_stolen() 88 ggtt->error_capture.start, in __igt_reset_stolen() 92 s = io_mapping_map_wc(&ggtt->iomap, in __igt_reset_stolen() 93 ggtt->error_capture.start, in __igt_reset_stolen() 109 ggtt->vm.clear_range(&ggtt->vm, ggtt->error_capture.start, PAGE_SIZE); in __igt_reset_stolen() 128 ggtt->vm.insert_page(&ggtt->vm, dma, in __igt_reset_stolen() 129 ggtt->error_capture.start, in __igt_reset_stolen() 133 s = io_mapping_map_wc(&ggtt->iomap, in __igt_reset_stolen() 134 ggtt->error_capture.start, in __igt_reset_stolen() [all …]
|
A D | intel_ggtt_fencing.h | 24 struct i915_ggtt *ggtt; member 44 struct i915_fence_reg *i915_reserve_fence(struct i915_ggtt *ggtt); 47 void intel_ggtt_restore_fences(struct i915_ggtt *ggtt); 54 void intel_ggtt_init_fences(struct i915_ggtt *ggtt); 55 void intel_ggtt_fini_fences(struct i915_ggtt *ggtt);
|
A D | gen6_ppgtt.c | 166 gen6_ggtt_invalidate(ppgtt->base.vm.gt->ggtt); in gen6_flush_pd() 284 struct i915_ggtt *ggtt = i915_vm_to_ggtt(vm); in pd_vma_bind() local 289 ppgtt->pd_addr = (gen6_pte_t __iomem *)ggtt->gsm + ggtt_offset; in pd_vma_bind() 380 struct i915_ggtt * const ggtt = ppgtt->base.vm.gt->ggtt; in gen6_alloc_top_pd() local 400 ppgtt->vma = i915_vma_instance(pd->pt.base, &ggtt->vm, NULL); in gen6_alloc_top_pd() 428 struct i915_ggtt * const ggtt = gt->ggtt; in gen6_ppgtt_create() local 450 ppgtt->base.vm.pte_encode = ggtt->vm.pte_encode; in gen6_ppgtt_create()
|
A D | intel_ggtt_gmch.h | 16 int intel_ggtt_gmch_probe(struct i915_ggtt *ggtt); 23 static inline int intel_ggtt_gmch_probe(struct i915_ggtt *ggtt) { return -ENODEV; } in intel_ggtt_gmch_probe() argument
|
A D | intel_gtt.h | 64 #define ggtt_total_entries(ggtt) ((ggtt)->vm.total >> PAGE_SHIFT) argument 351 void (*invalidate)(struct i915_ggtt *ggtt); 577 static inline bool i915_ggtt_has_aperture(const struct i915_ggtt *ggtt) in i915_ggtt_has_aperture() argument 579 return ggtt->mappable_end > 0; in i915_ggtt_has_aperture() 590 void i915_ggtt_resume(struct i915_ggtt *ggtt); 637 void gen6_ggtt_invalidate(struct i915_ggtt *ggtt);
|
A D | intel_ring.c | 110 static struct i915_vma *create_ring_vma(struct i915_ggtt *ggtt, int size) in create_ring_vma() argument 112 struct i915_address_space *vm = &ggtt->vm; in create_ring_vma() 119 if (IS_ERR(obj) && i915_ggtt_has_aperture(ggtt) && !HAS_LLC(i915)) in create_ring_vma() 173 vma = create_ring_vma(engine->gt->ggtt, size); in intel_engine_create_ring()
|
/linux-6.3-rc2/drivers/gpu/drm/i915/selftests/ |
A D | i915_gem_evict.c | 109 struct i915_ggtt *ggtt = gt->ggtt; in igt_evict_something() local 132 unpin_ggtt(ggtt); in igt_evict_something() 155 struct i915_ggtt *ggtt = gt->ggtt; in igt_overcommit() local 192 struct i915_ggtt *ggtt = gt->ggtt; in igt_evict_for_vma() local 216 unpin_ggtt(ggtt); in igt_evict_for_vma() 243 struct i915_ggtt *ggtt = gt->ggtt; in igt_evict_for_cache_color() local 325 unpin_ggtt(ggtt); in igt_evict_for_cache_color() 334 struct i915_ggtt *ggtt = gt->ggtt; in igt_evict_vm() local 355 unpin_ggtt(ggtt); in igt_evict_vm() 378 struct i915_ggtt *ggtt = gt->ggtt; in igt_evict_contexts() local [all …]
|
A D | mock_gtt.c | 109 struct i915_ggtt *ggtt = gt->ggtt; in mock_init_ggtt() local 111 ggtt->vm.gt = gt; in mock_init_ggtt() 112 ggtt->vm.i915 = gt->i915; in mock_init_ggtt() 113 ggtt->vm.is_ggtt = true; in mock_init_ggtt() 116 ggtt->mappable_end = resource_size(&ggtt->gmadr); in mock_init_ggtt() 117 ggtt->vm.total = 4096 * PAGE_SIZE; in mock_init_ggtt() 119 ggtt->vm.alloc_pt_dma = alloc_pt_dma; in mock_init_ggtt() 122 ggtt->vm.clear_range = mock_clear_range; in mock_init_ggtt() 123 ggtt->vm.insert_page = mock_insert_page; in mock_init_ggtt() 125 ggtt->vm.cleanup = mock_cleanup; in mock_init_ggtt() [all …]
|
A D | i915_gem.c | 45 struct i915_ggtt *ggtt = to_gt(i915)->ggtt; in trash_stolen() local 46 const u64 slot = ggtt->error_capture.start; in trash_stolen() 52 if (!i915_ggtt_has_aperture(ggtt)) in trash_stolen() 60 ggtt->vm.insert_page(&ggtt->vm, dma, slot, I915_CACHE_NONE, 0); in trash_stolen() 62 s = io_mapping_map_atomic_wc(&ggtt->iomap, slot); in trash_stolen() 70 ggtt->vm.clear_range(&ggtt->vm, slot, PAGE_SIZE); in trash_stolen() 103 i915_ggtt_suspend(to_gt(i915)->ggtt); in igt_pm_suspend() 113 i915_ggtt_suspend(to_gt(i915)->ggtt); in igt_pm_hibernate() 129 i915_ggtt_resume(to_gt(i915)->ggtt); in igt_pm_resume()
|
A D | i915_vma.c | 151 struct i915_ggtt *ggtt = arg; in igt_vma_create() local 258 struct i915_ggtt *ggtt = arg; in igt_vma_pin1() local 284 VALID(ggtt->vm.total - 4096, PIN_GLOBAL), in igt_vma_pin1() 285 VALID(ggtt->vm.total, PIN_GLOBAL), in igt_vma_pin1() 319 GEM_BUG_ON(!drm_mm_clean(&ggtt->vm.mm)); in igt_vma_pin1() 546 struct i915_ggtt *ggtt = arg; in igt_vma_rotate_remap() local 547 struct i915_address_space *vm = &ggtt->vm; in igt_vma_rotate_remap() 792 struct i915_ggtt *ggtt = arg; in igt_vma_partial() local 793 struct i915_address_space *vm = &ggtt->vm; in igt_vma_partial() 942 err = i915_subtests(tests, gt->ggtt); in i915_vma_mock_selftests() [all …]
|
A D | i915_gem_gtt.c | 1277 struct i915_ggtt *ggtt = to_gt(i915)->ggtt; in exercise_ggtt() local 1342 struct i915_ggtt *ggtt = to_gt(i915)->ggtt; in igt_ggtt_page() local 1361 mutex_lock(&ggtt->vm.mutex); in igt_ggtt_page() 1365 0, ggtt->mappable_end, in igt_ggtt_page() 1376 ggtt->vm.insert_page(&ggtt->vm, in igt_ggtt_page() 1417 ggtt->vm.clear_range(&ggtt->vm, tmp.start, tmp.size); in igt_ggtt_page() 1419 mutex_lock(&ggtt->vm.mutex); in igt_ggtt_page() 1471 struct i915_ggtt *ggtt = arg; in igt_mock_fill() local 1647 0, ggtt->vm.total, in igt_gtt_reserve() 1715 0, ggtt->vm.total, in igt_gtt_insert() [all …]
|
/linux-6.3-rc2/drivers/gpu/drm/i915/ |
A D | i915_vgpu.c | 161 ggtt->vm.reserved -= node->size; in vgt_deballoon_space() 177 if (!intel_vgpu_active(ggtt->vm.i915)) in intel_vgt_deballoon() 204 ggtt->vm.reserved += size; in vgt_balloon_space() 257 unsigned long ggtt_end = ggtt->vm.total; in intel_vgt_balloon() 263 if (!intel_vgpu_active(ggtt->vm.i915)) in intel_vgt_balloon() 286 if (mappable_end > ggtt->mappable_end || in intel_vgt_balloon() 287 unmappable_base < ggtt->mappable_end || in intel_vgt_balloon() 294 if (unmappable_base > ggtt->mappable_end) { in intel_vgt_balloon() 296 ggtt->mappable_end, unmappable_base); in intel_vgt_balloon() 318 if (mappable_end < ggtt->mappable_end) { in intel_vgt_balloon() [all …]
|
A D | i915_gem.c | 96 struct i915_ggtt *ggtt = to_gt(i915)->ggtt; in i915_gem_get_aperture_ioctl() local 104 pinned = ggtt->vm.reserved; in i915_gem_get_aperture_ioctl() 309 struct i915_ggtt *ggtt = to_gt(i915)->ggtt; in i915_gem_gtt_prepare() local 347 ggtt->vm.clear_range(&ggtt->vm, node->start, node->size); in i915_gem_gtt_prepare() 370 struct i915_ggtt *ggtt = to_gt(i915)->ggtt; in i915_gem_gtt_cleanup() local 374 ggtt->vm.clear_range(&ggtt->vm, node->start, node->size); in i915_gem_gtt_cleanup() 386 struct i915_ggtt *ggtt = to_gt(i915)->ggtt; in i915_gem_gtt_pread() local 422 ggtt->vm.insert_page(&ggtt->vm, in i915_gem_gtt_pread() 546 struct i915_ggtt *ggtt = to_gt(i915)->ggtt; in i915_gem_gtt_pwrite_fast() local 600 ggtt->vm.insert_page(&ggtt->vm, in i915_gem_gtt_pwrite_fast() [all …]
|
A D | i915_gem_gtt.c | 60 struct i915_ggtt *ggtt = to_gt(i915)->ggtt; in i915_gem_gtt_finish_pages() local 63 if (unlikely(ggtt->do_idle_maps)) in i915_gem_gtt_finish_pages() 109 GEM_BUG_ON(vm == &to_gt(vm->i915)->ggtt->alias->vm); in i915_gem_gtt_reserve() 209 GEM_BUG_ON(vm == &to_gt(vm->i915)->ggtt->alias->vm); in i915_gem_gtt_insert()
|
A D | i915_vgpu.h | 39 int intel_vgt_balloon(struct i915_ggtt *ggtt); 40 void intel_vgt_deballoon(struct i915_ggtt *ggtt);
|
A D | i915_gem_evict.c | 48 struct i915_ggtt *ggtt = i915_vm_to_ggtt(vm); in ggtt_flush() local 52 list_for_each_entry(gt, &ggtt->gt_list, ggtt_link) { in ggtt_flush() 188 struct i915_ggtt *ggtt = i915_vm_to_ggtt(vm); in i915_gem_evict_something() local 190 list_for_each_entry(gt, &ggtt->gt_list, ggtt_link) in i915_gem_evict_something() 353 struct i915_ggtt *ggtt = i915_vm_to_ggtt(vm); in i915_gem_evict_for_node() local 356 list_for_each_entry(gt, &ggtt->gt_list, ggtt_link) in i915_gem_evict_for_node()
|
A D | i915_gpu_error.c | 1081 struct i915_ggtt *ggtt = gt->ggtt; in i915_vma_coredump_create() local 1116 mutex_lock(&ggtt->error_mutex); in i915_vma_coredump_create() 1117 if (ggtt->vm.raw_insert_page) in i915_vma_coredump_create() 1118 ggtt->vm.raw_insert_page(&ggtt->vm, dma, slot, in i915_vma_coredump_create() 1121 ggtt->vm.insert_page(&ggtt->vm, dma, slot, in i915_vma_coredump_create() 1132 ggtt->vm.clear_range(&ggtt->vm, slot, PAGE_SIZE); in i915_vma_coredump_create() 1133 mutex_unlock(&ggtt->error_mutex); in i915_vma_coredump_create() 1195 struct i915_ggtt *ggtt = gt->_gt->ggtt; in gt_record_fences() local 1200 for (i = 0; i < ggtt->num_fences; i++) in gt_record_fences() 1205 for (i = 0; i < ggtt->num_fences; i++) in gt_record_fences() [all …]
|
/linux-6.3-rc2/drivers/gpu/drm/i915/gvt/ |
A D | aperture_gm.c | 65 mutex_lock(>->ggtt->vm.mutex); in alloc_gm() 72 mutex_unlock(>->ggtt->vm.mutex); in alloc_gm() 102 mutex_lock(>->ggtt->vm.mutex); in alloc_vgpu_gm() 104 mutex_unlock(>->ggtt->vm.mutex); in alloc_vgpu_gm() 113 mutex_lock(>->ggtt->vm.mutex); in free_vgpu_gm() 116 mutex_unlock(>->ggtt->vm.mutex); in free_vgpu_gm() 179 mutex_lock(&gvt->gt->ggtt->vm.mutex); in free_vgpu_fence() 186 mutex_unlock(&gvt->gt->ggtt->vm.mutex); in free_vgpu_fence() 202 mutex_lock(&gvt->gt->ggtt->vm.mutex); in alloc_vgpu_fence() 214 mutex_unlock(&gvt->gt->ggtt->vm.mutex); in alloc_vgpu_fence() [all …]
|
/linux-6.3-rc2/drivers/gpu/drm/i915/gem/ |
A D | i915_gem_tiling.c | 187 struct i915_ggtt *ggtt = to_gt(i915)->ggtt; in i915_gem_object_fence_prepare() local 195 mutex_lock(&ggtt->vm.mutex); in i915_gem_object_fence_prepare() 199 GEM_BUG_ON(vma->vm != &ggtt->vm); in i915_gem_object_fence_prepare() 212 list_splice(&unbind, &ggtt->vm.bound_list); in i915_gem_object_fence_prepare() 217 mutex_unlock(&ggtt->vm.mutex); in i915_gem_object_fence_prepare() 351 if (!to_gt(dev_priv)->ggtt->num_fences) in i915_gem_set_tiling_ioctl() 377 args->swizzle_mode = to_gt(dev_priv)->ggtt->bit_6_swizzle_x; in i915_gem_set_tiling_ioctl() 379 args->swizzle_mode = to_gt(dev_priv)->ggtt->bit_6_swizzle_y; in i915_gem_set_tiling_ioctl() 434 if (!to_gt(dev_priv)->ggtt->num_fences) in i915_gem_get_tiling_ioctl() 450 args->swizzle_mode = to_gt(dev_priv)->ggtt->bit_6_swizzle_x; in i915_gem_get_tiling_ioctl() [all …]
|
A D | i915_gem_stolen.c | 88 struct i915_ggtt *ggtt = to_gt(i915)->ggtt; in adjust_stolen() local 541 static void dbg_poison(struct i915_ggtt *ggtt, in dbg_poison() argument 554 mutex_lock(&ggtt->error_mutex); in dbg_poison() 558 ggtt->vm.insert_page(&ggtt->vm, addr, in dbg_poison() 559 ggtt->error_capture.start, in dbg_poison() 563 s = io_mapping_map_wc(&ggtt->iomap, in dbg_poison() 564 ggtt->error_capture.start, in dbg_poison() 573 ggtt->vm.clear_range(&ggtt->vm, ggtt->error_capture.start, PAGE_SIZE); in dbg_poison() 574 mutex_unlock(&ggtt->error_mutex); in dbg_poison() 622 dbg_poison(to_gt(i915)->ggtt, in i915_gem_object_get_pages_stolen() [all …]
|
A D | i915_gem_mman.c | 301 struct i915_ggtt *ggtt = to_gt(i915)->ggtt; in vm_fault_gtt() local 370 ret = mutex_lock_interruptible(&ggtt->vm.mutex); in vm_fault_gtt() 372 ret = i915_gem_evict_vm(&ggtt->vm, &ww, NULL); in vm_fault_gtt() 373 mutex_unlock(&ggtt->vm.mutex); in vm_fault_gtt() 400 &ggtt->iomap); in vm_fault_gtt() 407 mutex_lock(&to_gt(i915)->ggtt->vm.mutex); in vm_fault_gtt() 410 mutex_unlock(&to_gt(i915)->ggtt->vm.mutex); in vm_fault_gtt() 430 intel_gt_reset_unlock(ggtt->vm.gt, srcu); in vm_fault_gtt() 531 mutex_lock(&to_gt(i915)->ggtt->vm.mutex); in i915_gem_object_release_mmap_gtt() 549 mutex_unlock(&to_gt(i915)->ggtt->vm.mutex); in i915_gem_object_release_mmap_gtt() [all …]
|
/linux-6.3-rc2/drivers/gpu/drm/i915/gt/uc/ |
A D | intel_uc_fw.c | 838 struct i915_ggtt *ggtt = gt->ggtt; in uc_fw_ggtt_offset() local 839 struct drm_mm_node *node = &ggtt->uc_fw; in uc_fw_ggtt_offset() 866 struct i915_ggtt *ggtt = __uc_fw_to_gt(uc_fw)->ggtt; in uc_fw_bind_ggtt() local 883 if (ggtt->vm.raw_insert_entries) in uc_fw_bind_ggtt() 884 ggtt->vm.raw_insert_entries(&ggtt->vm, dummy, I915_CACHE_NONE, pte_flags); in uc_fw_bind_ggtt() 886 ggtt->vm.insert_entries(&ggtt->vm, dummy, I915_CACHE_NONE, pte_flags); in uc_fw_bind_ggtt() 892 struct i915_ggtt *ggtt = __uc_fw_to_gt(uc_fw)->ggtt; in uc_fw_unbind_ggtt() local 895 ggtt->vm.clear_range(&ggtt->vm, start, obj->base.size); in uc_fw_unbind_ggtt()
|