/linux/drivers/gpu/drm/i915/gt/ |
A D | intel_ggtt.c | 63 ggtt->vm.cleanup(&ggtt->vm); in ggtt_init_hw() 142 ggtt->vm.clear_range(&ggtt->vm, 0, ggtt->vm.total); in i915_ggtt_suspend() 143 ggtt->invalidate(ggtt); in i915_ggtt_suspend() 220 ggtt->invalidate(ggtt); in gen8_ggtt_insert_page() 256 ggtt->invalidate(ggtt); in gen8_ggtt_insert_entries() 271 ggtt->invalidate(ggtt); in gen6_ggtt_insert_page() 307 ggtt->invalidate(ggtt); in gen6_ggtt_insert_entries() 1239 ggtt->invalidate(ggtt); in i915_ggtt_enable_guc() 1253 ggtt->invalidate(ggtt); in i915_ggtt_disable_guc() 1265 ggtt->vm.clear_range(&ggtt->vm, 0, ggtt->vm.total); in i915_ggtt_resume() [all …]
|
A D | intel_ggtt_fencing.c | 45 return fence->ggtt->vm.i915; in fence_to_i915() 50 return fence->ggtt->vm.gt->uncore; in fence_to_uncore() 197 struct i915_ggtt *ggtt = fence->ggtt; in fence_update() local 373 fence = fence_find(ggtt); in __i915_vma_pin_fence() 463 fence = fence_find(ggtt); in i915_reserve_fence() 487 struct i915_ggtt *ggtt = fence->ggtt; in i915_unreserve_fence() local 843 detect_bit_6_swizzle(ggtt); in intel_ggtt_init_fences() 863 if (!ggtt->fence_regs) in intel_ggtt_init_fences() 871 fence->ggtt = ggtt; in intel_ggtt_init_fences() 875 ggtt->num_fences = num_fences; in intel_ggtt_init_fences() [all …]
|
A D | selftest_reset.c | 22 struct i915_ggtt *ggtt = >->i915->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 | intel_region_lmem.c | 18 struct i915_ggtt *ggtt = &i915->ggtt; in init_fake_lmem_bar() local 28 ret = drm_mm_reserve_node(&ggtt->vm.mm, &mem->fake_mappable); in init_fake_lmem_bar() 43 ggtt->vm.insert_page(&ggtt->vm, in init_fake_lmem_bar() 130 GEM_BUG_ON(i915_ggtt_has_aperture(&i915->ggtt)); in intel_gt_setup_fake_lmem()
|
A D | gen6_ppgtt.c | 162 gen6_ggtt_invalidate(ppgtt->base.vm.gt->ggtt); in gen6_flush_pd() 295 struct i915_ggtt *ggtt = i915_vm_to_ggtt(vm); in pd_vma_bind() local 300 ppgtt->pd_addr = (gen6_pte_t __iomem *)ggtt->gsm + ggtt_offset; in pd_vma_bind() 336 struct i915_ggtt *ggtt = ppgtt->base.vm.gt->ggtt; in pd_vma_create() local 340 GEM_BUG_ON(size > ggtt->vm.total); in pd_vma_create() 350 vma->vm = i915_vm_get(&ggtt->vm); in pd_vma_create() 421 struct i915_ggtt * const ggtt = gt->ggtt; in gen6_ppgtt_create() local 443 ppgtt->base.vm.pte_encode = ggtt->vm.pte_encode; in gen6_ppgtt_create()
|
A D | intel_gtt.h | 61 #define ggtt_total_entries(ggtt) ((ggtt)->vm.total >> PAGE_SHIFT) argument 321 void (*invalidate)(struct i915_ggtt *ggtt); 531 void i915_ggtt_enable_guc(struct i915_ggtt *ggtt); 532 void i915_ggtt_disable_guc(struct i915_ggtt *ggtt); 537 static inline bool i915_ggtt_has_aperture(const struct i915_ggtt *ggtt) in i915_ggtt_has_aperture() argument 539 return ggtt->mappable_end > 0; in i915_ggtt_has_aperture() 548 void i915_ggtt_resume(struct i915_ggtt *ggtt); 595 void gen6_ggtt_invalidate(struct i915_ggtt *ggtt);
|
A D | intel_ring.c | 108 static struct i915_vma *create_ring_vma(struct i915_ggtt *ggtt, int size) in create_ring_vma() argument 110 struct i915_address_space *vm = &ggtt->vm; in create_ring_vma() 117 if (IS_ERR(obj) && i915_ggtt_has_aperture(ggtt)) in create_ring_vma() 171 vma = create_ring_vma(engine->gt->ggtt, size); in intel_engine_create_ring()
|
/linux/drivers/gpu/drm/i915/selftests/ |
A D | i915_gem_evict.c | 108 struct i915_ggtt *ggtt = gt->ggtt; in igt_evict_something() local 131 unpin_ggtt(ggtt); in igt_evict_something() 154 struct i915_ggtt *ggtt = gt->ggtt; in igt_overcommit() local 191 struct i915_ggtt *ggtt = gt->ggtt; in igt_evict_for_vma() local 215 unpin_ggtt(ggtt); in igt_evict_for_vma() 242 struct i915_ggtt *ggtt = gt->ggtt; in igt_evict_for_cache_color() local 324 unpin_ggtt(ggtt); in igt_evict_for_cache_color() 333 struct i915_ggtt *ggtt = gt->ggtt; in igt_evict_vm() local 353 unpin_ggtt(ggtt); in igt_evict_vm() 373 struct i915_ggtt *ggtt = gt->ggtt; in igt_evict_contexts() local [all …]
|
A D | mock_gtt.c | 110 memset(ggtt, 0, sizeof(*ggtt)); in mock_init_ggtt() 112 ggtt->vm.gt = &i915->gt; in mock_init_ggtt() 113 ggtt->vm.i915 = i915; in mock_init_ggtt() 114 ggtt->vm.is_ggtt = true; in mock_init_ggtt() 117 ggtt->mappable_end = resource_size(&ggtt->gmadr); in mock_init_ggtt() 118 ggtt->vm.total = 4096 * PAGE_SIZE; in mock_init_ggtt() 120 ggtt->vm.alloc_pt_dma = alloc_pt_dma; in mock_init_ggtt() 122 ggtt->vm.clear_range = mock_clear_range; in mock_init_ggtt() 125 ggtt->vm.cleanup = mock_cleanup; in mock_init_ggtt() 133 i915->gt.ggtt = ggtt; in mock_init_ggtt() [all …]
|
A D | i915_gem_gtt.c | 1125 struct i915_ggtt *ggtt = &i915->ggtt; in exercise_ggtt() local 1185 struct i915_ggtt *ggtt = &i915->ggtt; in igt_ggtt_page() local 1219 ggtt->vm.insert_page(&ggtt->vm, in igt_ggtt_page() 1260 ggtt->vm.clear_range(&ggtt->vm, tmp.start, tmp.size); in igt_ggtt_page() 1524 0, ggtt->vm.total, in igt_gtt_insert() 1599 0, ggtt->vm.total, in igt_gtt_insert() 1740 struct i915_ggtt *ggtt; in i915_gem_gtt_mock_selftests() local 1747 ggtt = kmalloc(sizeof(*ggtt), GFP_KERNEL); in i915_gem_gtt_mock_selftests() 1748 if (!ggtt) { in i915_gem_gtt_mock_selftests() 1758 mock_fini_ggtt(ggtt); in i915_gem_gtt_mock_selftests() [all …]
|
A D | i915_gem.c | 44 struct i915_ggtt *ggtt = &i915->ggtt; in trash_stolen() local 45 const u64 slot = ggtt->error_capture.start; in trash_stolen() 51 if (!i915_ggtt_has_aperture(ggtt)) in trash_stolen() 59 ggtt->vm.insert_page(&ggtt->vm, dma, slot, I915_CACHE_NONE, 0); in trash_stolen() 61 s = io_mapping_map_atomic_wc(&ggtt->iomap, slot); in trash_stolen() 69 ggtt->vm.clear_range(&ggtt->vm, slot, PAGE_SIZE); in trash_stolen() 102 i915_ggtt_suspend(&i915->ggtt); in igt_pm_suspend() 112 i915_ggtt_suspend(&i915->ggtt); in igt_pm_hibernate() 128 i915_ggtt_resume(&i915->ggtt); in igt_pm_resume()
|
A D | i915_vma.c | 150 struct i915_ggtt *ggtt = arg; in igt_vma_create() local 257 struct i915_ggtt *ggtt = arg; in igt_vma_pin1() local 545 struct i915_ggtt *ggtt = arg; in igt_vma_rotate_remap() local 787 struct i915_ggtt *ggtt = arg; in igt_vma_partial() local 910 struct i915_ggtt *ggtt; in i915_vma_mock_selftests() local 917 ggtt = kmalloc(sizeof(*ggtt), GFP_KERNEL); in i915_vma_mock_selftests() 918 if (!ggtt) { in i915_vma_mock_selftests() 922 mock_init_ggtt(i915, ggtt); in i915_vma_mock_selftests() 924 err = i915_subtests(tests, ggtt); in i915_vma_mock_selftests() 928 mock_fini_ggtt(ggtt); in i915_vma_mock_selftests() [all …]
|
A D | mock_gtt.h | 31 void mock_init_ggtt(struct drm_i915_private *i915, struct i915_ggtt *ggtt); 32 void mock_fini_ggtt(struct i915_ggtt *ggtt);
|
A D | mock_gem_device.c | 72 mock_fini_ggtt(&i915->ggtt); in mock_device_release() 195 mock_init_ggtt(i915, &i915->ggtt); in mock_gem_device() 196 i915->gt.vm = i915_vm_get(&i915->ggtt.vm); in mock_gem_device()
|
/linux/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() 200 ret = i915_gem_gtt_reserve(&ggtt->vm, node, in vgt_balloon_space() 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() 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 | 91 struct i915_ggtt *ggtt = &to_i915(dev)->ggtt; in i915_gem_get_aperture_ioctl() local 99 pinned = ggtt->vm.reserved; in i915_gem_get_aperture_ioctl() 292 struct i915_ggtt *ggtt = &i915->ggtt; in i915_gem_gtt_prepare() local 330 ggtt->vm.clear_range(&ggtt->vm, node->start, node->size); in i915_gem_gtt_prepare() 353 struct i915_ggtt *ggtt = &i915->ggtt; in i915_gem_gtt_cleanup() local 357 ggtt->vm.clear_range(&ggtt->vm, node->start, node->size); in i915_gem_gtt_cleanup() 369 struct i915_ggtt *ggtt = &i915->ggtt; in i915_gem_gtt_pread() local 401 ggtt->vm.insert_page(&ggtt->vm, in i915_gem_gtt_pread() 525 struct i915_ggtt *ggtt = &i915->ggtt; in i915_gem_gtt_pwrite_fast() local 575 ggtt->vm.insert_page(&ggtt->vm, in i915_gem_gtt_pwrite_fast() [all …]
|
A D | i915_gem_gtt.c | 59 struct i915_ggtt *ggtt = &i915->ggtt; in i915_gem_gtt_finish_pages() local 62 if (unlikely(ggtt->do_idle_maps)) in i915_gem_gtt_finish_pages() 106 GEM_BUG_ON(vm == &vm->i915->ggtt.alias->vm); in i915_gem_gtt_reserve() 204 GEM_BUG_ON(vm == &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);
|
/linux/drivers/gpu/drm/i915/gem/ |
A D | i915_gem_tiling.c | 184 struct i915_ggtt *ggtt = &to_i915(obj->base.dev)->ggtt; in i915_gem_object_fence_prepare() local 192 mutex_lock(&ggtt->vm.mutex); in i915_gem_object_fence_prepare() 196 GEM_BUG_ON(vma->vm != &ggtt->vm); in i915_gem_object_fence_prepare() 209 list_splice(&unbind, &ggtt->vm.bound_list); in i915_gem_object_fence_prepare() 214 mutex_unlock(&ggtt->vm.mutex); in i915_gem_object_fence_prepare() 339 if (!dev_priv->ggtt.num_fences) in i915_gem_set_tiling_ioctl() 365 args->swizzle_mode = to_i915(dev)->ggtt.bit_6_swizzle_x; in i915_gem_set_tiling_ioctl() 367 args->swizzle_mode = to_i915(dev)->ggtt.bit_6_swizzle_y; in i915_gem_set_tiling_ioctl() 422 if (!dev_priv->ggtt.num_fences) in i915_gem_get_tiling_ioctl() 438 args->swizzle_mode = dev_priv->ggtt.bit_6_swizzle_x; in i915_gem_get_tiling_ioctl() [all …]
|
A D | i915_gem_stolen.c | 74 struct i915_ggtt *ggtt = &i915->ggtt; in i915_adjust_stolen() local 102 ggtt_total_entries(ggtt) * 4); in i915_adjust_stolen() 522 mutex_lock(&ggtt->error_mutex); in dbg_poison() 526 ggtt->vm.insert_page(&ggtt->vm, addr, in dbg_poison() 527 ggtt->error_capture.start, in dbg_poison() 531 s = io_mapping_map_wc(&ggtt->iomap, in dbg_poison() 532 ggtt->error_capture.start, in dbg_poison() 541 ggtt->vm.clear_range(&ggtt->vm, ggtt->error_capture.start, PAGE_SIZE); in dbg_poison() 542 mutex_unlock(&ggtt->error_mutex); in dbg_poison() 589 dbg_poison(&to_i915(obj->base.dev)->ggtt, in i915_gem_object_get_pages_stolen() [all …]
|
A D | i915_gem_mman.c | 297 struct i915_ggtt *ggtt = &i915->ggtt; in vm_fault_gtt() local 329 ret = intel_gt_reset_trylock(ggtt->vm.gt, &srcu); in vm_fault_gtt() 383 &ggtt->iomap); in vm_fault_gtt() 390 mutex_lock(&i915->ggtt.vm.mutex); in vm_fault_gtt() 393 mutex_unlock(&i915->ggtt.vm.mutex); in vm_fault_gtt() 399 intel_wakeref_auto(&i915->ggtt.userfault_wakeref, in vm_fault_gtt() 413 intel_gt_reset_unlock(ggtt->vm.gt, srcu); in vm_fault_gtt() 514 mutex_lock(&i915->ggtt.vm.mutex); in i915_gem_object_release_mmap_gtt() 532 mutex_unlock(&i915->ggtt.vm.mutex); in i915_gem_object_release_mmap_gtt() 741 else if (!i915_ggtt_has_aperture(&to_i915(dev)->ggtt)) in i915_gem_dumb_mmap_offset() [all …]
|
/linux/drivers/gpu/drm/i915/gvt/ |
A D | aperture_gm.c | 64 mutex_lock(>->ggtt->vm.mutex); in alloc_gm() 71 mutex_unlock(>->ggtt->vm.mutex); in alloc_gm() 101 mutex_lock(>->ggtt->vm.mutex); in alloc_vgpu_gm() 103 mutex_unlock(>->ggtt->vm.mutex); in alloc_vgpu_gm() 112 mutex_lock(>->ggtt->vm.mutex); in free_vgpu_gm() 115 mutex_unlock(>->ggtt->vm.mutex); in free_vgpu_gm() 178 mutex_lock(&gvt->gt->ggtt->vm.mutex); in free_vgpu_fence() 185 mutex_unlock(&gvt->gt->ggtt->vm.mutex); in free_vgpu_fence() 201 mutex_lock(&gvt->gt->ggtt->vm.mutex); in alloc_vgpu_fence() 213 mutex_unlock(&gvt->gt->ggtt->vm.mutex); in alloc_vgpu_fence() [all …]
|
/linux/drivers/gpu/drm/i915/gt/uc/ |
A D | intel_uc_fw.c | 411 struct i915_ggtt *ggtt = __uc_fw_to_gt(uc_fw)->ggtt; in uc_fw_ggtt_offset() local 412 struct drm_mm_node *node = &ggtt->uc_fw; in uc_fw_ggtt_offset() 424 struct i915_ggtt *ggtt = __uc_fw_to_gt(uc_fw)->ggtt; in uc_fw_bind_ggtt() local 431 dummy->vm = &ggtt->vm; in uc_fw_bind_ggtt() 434 GEM_BUG_ON(dummy->node.size > ggtt->uc_fw.size); in uc_fw_bind_ggtt() 443 ggtt->vm.insert_entries(&ggtt->vm, dummy, I915_CACHE_NONE, pte_flags); in uc_fw_bind_ggtt() 449 struct i915_ggtt *ggtt = __uc_fw_to_gt(uc_fw)->ggtt; in uc_fw_unbind_ggtt() local 452 ggtt->vm.clear_range(&ggtt->vm, start, obj->base.size); in uc_fw_unbind_ggtt()
|
/linux/drivers/gpu/drm/i915/gem/selftests/ |
A D | i915_gem_client_blt.c | 223 swizzle = gt->ggtt->bit_6_swizzle_x; in tiled_offset() 233 swizzle = gt->ggtt->bit_6_swizzle_y; in tiled_offset() 546 struct i915_ggtt *ggtt = &i915->ggtt; in bad_swizzling() local 551 if (has_bit17_swizzle(ggtt->bit_6_swizzle_x) || in bad_swizzling() 552 has_bit17_swizzle(ggtt->bit_6_swizzle_y)) in bad_swizzling()
|