Searched refs:ggtt (Results 1 - 25 of 79) sorted by relevance

1234

/linux-master/drivers/gpu/drm/xe/
H A Dxe_ggtt.c74 void xe_ggtt_set_pte(struct xe_ggtt *ggtt, u64 addr, u64 pte) argument
76 xe_tile_assert(ggtt->tile, !(addr & XE_PTE_MASK));
77 xe_tile_assert(ggtt->tile, addr < ggtt->size);
79 writeq(pte, &ggtt->gsm[addr >> XE_PTE_SHIFT]);
82 static void xe_ggtt_clear(struct xe_ggtt *ggtt, u64 start, u64 size) argument
84 u16 pat_index = tile_to_xe(ggtt->tile)->pat.idx[XE_CACHE_WB];
88 xe_tile_assert(ggtt->tile, start < end);
90 if (ggtt->scratch)
91 scratch_pte = ggtt
104 struct xe_ggtt *ggtt = arg; local
112 struct xe_ggtt *ggtt = arg; local
117 primelockdep(struct xe_ggtt *ggtt) argument
142 xe_ggtt_init_early(struct xe_ggtt *ggtt) argument
203 xe_ggtt_initial_clear(struct xe_ggtt *ggtt) argument
219 xe_ggtt_init(struct xe_ggtt *ggtt) argument
296 xe_ggtt_invalidate(struct xe_ggtt *ggtt) argument
303 xe_ggtt_printk(struct xe_ggtt *ggtt, const char *prefix) argument
323 xe_ggtt_dump_node(struct xe_ggtt *ggtt, const struct drm_mm_node *node, const char *description) argument
346 xe_ggtt_balloon(struct xe_ggtt *ggtt, u64 start, u64 end, struct drm_mm_node *node) argument
379 xe_ggtt_deballoon(struct xe_ggtt *ggtt, struct drm_mm_node *node) argument
391 xe_ggtt_insert_special_node_locked(struct xe_ggtt *ggtt, struct drm_mm_node *node, u32 size, u32 align, u32 mm_flags) argument
398 xe_ggtt_insert_special_node(struct xe_ggtt *ggtt, struct drm_mm_node *node, u32 size, u32 align) argument
411 xe_ggtt_map_bo(struct xe_ggtt *ggtt, struct xe_bo *bo) argument
426 __xe_ggtt_insert_bo_at(struct xe_ggtt *ggtt, struct xe_bo *bo, u64 start, u64 end) argument
457 xe_ggtt_insert_bo_at(struct xe_ggtt *ggtt, struct xe_bo *bo, u64 start, u64 end) argument
463 xe_ggtt_insert_bo(struct xe_ggtt *ggtt, struct xe_bo *bo) argument
468 xe_ggtt_remove_node(struct xe_ggtt *ggtt, struct drm_mm_node *node) argument
483 xe_ggtt_remove_bo(struct xe_ggtt *ggtt, struct xe_bo *bo) argument
494 xe_ggtt_dump(struct xe_ggtt *ggtt, struct drm_printer *p) argument
[all...]
H A Dxe_ggtt.h13 void xe_ggtt_set_pte(struct xe_ggtt *ggtt, u64 addr, u64 pte);
14 void xe_ggtt_invalidate(struct xe_ggtt *ggtt);
15 int xe_ggtt_init_early(struct xe_ggtt *ggtt);
16 int xe_ggtt_init(struct xe_ggtt *ggtt);
17 void xe_ggtt_printk(struct xe_ggtt *ggtt, const char *prefix);
19 int xe_ggtt_balloon(struct xe_ggtt *ggtt, u64 start, u64 size, struct drm_mm_node *node);
20 void xe_ggtt_deballoon(struct xe_ggtt *ggtt, struct drm_mm_node *node);
22 int xe_ggtt_insert_special_node(struct xe_ggtt *ggtt, struct drm_mm_node *node,
24 int xe_ggtt_insert_special_node_locked(struct xe_ggtt *ggtt,
27 void xe_ggtt_remove_node(struct xe_ggtt *ggtt, struc
[all...]
H A Dxe_tile.c88 tile->mem.ggtt = drmm_kzalloc(drm, sizeof(*tile->mem.ggtt),
90 if (!tile->mem.ggtt)
92 tile->mem.ggtt->tile = tile;
/linux-master/drivers/gpu/drm/i915/gt/
H A Dintel_ggtt.c56 static int ggtt_init_hw(struct i915_ggtt *ggtt) argument
58 struct drm_i915_private *i915 = ggtt->vm.i915;
60 i915_address_space_init(&ggtt->vm, VM_CLASS_GGTT);
62 ggtt->vm.is_ggtt = true;
65 ggtt->vm.has_read_only = IS_VALLEYVIEW(i915);
68 ggtt->vm.mm.color_adjust = i915_ggtt_color_adjust;
70 if (ggtt->mappable_end) {
71 if (!io_mapping_init_wc(&ggtt->iomap,
72 ggtt->gmadr.start,
73 ggtt
178 i915_ggtt_suspend(struct i915_ggtt *ggtt) argument
189 gen6_ggtt_invalidate(struct i915_ggtt *ggtt) argument
214 gen8_ggtt_invalidate(struct i915_ggtt *ggtt) argument
241 guc_ggtt_invalidate(struct i915_ggtt *ggtt) argument
293 should_update_ggtt_with_bind(struct i915_ggtt *ggtt) argument
300 gen8_ggtt_bind_get_ce(struct i915_ggtt *ggtt, intel_wakeref_t *wakeref) argument
332 gen8_ggtt_bind_ptes(struct i915_ggtt *ggtt, u32 offset, struct sg_table *pages, u32 num_entries, const gen8_pte_t pte) argument
445 struct i915_ggtt *ggtt = i915_vm_to_ggtt(vm); local
458 struct i915_ggtt *ggtt = i915_vm_to_ggtt(vm); local
474 struct i915_ggtt *ggtt = i915_vm_to_ggtt(vm); local
512 struct i915_ggtt *ggtt = i915_vm_to_ggtt(vm); local
543 struct i915_ggtt *ggtt = i915_vm_to_ggtt(vm); local
555 struct i915_ggtt *ggtt = i915_vm_to_ggtt(vm); local
576 struct i915_ggtt *ggtt = i915_vm_to_ggtt(vm); local
600 struct i915_ggtt *ggtt = i915_vm_to_ggtt(vm); local
620 struct i915_ggtt *ggtt = i915_vm_to_ggtt(vm); local
725 struct i915_ggtt *ggtt = i915_vm_to_ggtt(vm); local
784 ggtt_reserve_guc_top(struct i915_ggtt *ggtt) argument
805 ggtt_release_guc_top(struct i915_ggtt *ggtt) argument
811 cleanup_init_ggtt(struct i915_ggtt *ggtt) argument
819 init_ggtt(struct i915_ggtt *ggtt) argument
953 init_aliasing_ppgtt(struct i915_ggtt *ggtt) argument
1005 fini_aliasing_ppgtt(struct i915_ggtt *ggtt) argument
1036 ggtt_cleanup_hw(struct i915_ggtt *ggtt) argument
1083 struct i915_ggtt *ggtt = to_gt(i915)->ggtt; local
1098 struct i915_ggtt *ggtt = to_gt(i915)->ggtt; local
1153 ggtt_probe_common(struct i915_ggtt *ggtt, u64 size) argument
1205 struct i915_ggtt *ggtt = i915_vm_to_ggtt(vm); local
1217 gen8_gmch_probe(struct i915_ggtt *ggtt) argument
1394 gen6_gmch_probe(struct i915_ggtt *ggtt) argument
1453 ggtt_probe_hw(struct i915_ggtt *ggtt, struct intel_gt *gt) argument
1530 struct i915_ggtt *ggtt; local
1597 i915_ggtt_resume(struct i915_ggtt *ggtt) argument
[all...]
H A Dintel_ggtt_gmch.h16 int intel_ggtt_gmch_probe(struct i915_ggtt *ggtt);
23 static inline int intel_ggtt_gmch_probe(struct i915_ggtt *ggtt) { return -ENODEV; } argument
H A Dintel_ggtt_gmch.c42 static void gmch_ggtt_invalidate(struct i915_ggtt *ggtt) argument
77 int intel_ggtt_gmch_probe(struct i915_ggtt *ggtt) argument
79 struct drm_i915_private *i915 = ggtt->vm.i915;
89 intel_gmch_gtt_get(&ggtt->vm.total, &gmadr_base, &ggtt->mappable_end);
91 ggtt->gmadr = DEFINE_RES_MEM(gmadr_base, ggtt->mappable_end);
93 ggtt->vm.alloc_pt_dma = alloc_pt_dma;
94 ggtt->vm.alloc_scratch_dma = alloc_pt_dma;
99 ggtt
[all...]
H A Dintel_ggtt_fencing.h24 struct i915_ggtt *ggtt; member in struct:i915_fence_reg
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);
H A Dintel_ggtt_fencing.c51 return fence->ggtt->vm.i915;
56 return fence->ggtt->vm.gt->uncore;
203 struct i915_ggtt *ggtt = fence->ggtt; local
253 list_move(&fence->link, &ggtt->fence_list);
277 list_move_tail(&fence->link, &ggtt->fence_list);
328 static struct i915_fence_reg *fence_find(struct i915_ggtt *ggtt) argument
333 list_for_each_entry_safe(fence, fn, &ggtt->fence_list, link) {
344 list_move_tail(&fence->link, &ggtt->fence_list);
355 if (intel_has_pending_fb_unpin(ggtt
363 struct i915_ggtt *ggtt = i915_vm_to_ggtt(vma->vm); local
454 i915_reserve_fence(struct i915_ggtt *ggtt) argument
493 struct i915_ggtt *ggtt = fence->ggtt; local
508 intel_ggtt_restore_fences(struct i915_ggtt *ggtt) argument
571 detect_bit_6_swizzle(struct i915_ggtt *ggtt) argument
838 intel_ggtt_init_fences(struct i915_ggtt *ggtt) argument
885 intel_ggtt_fini_fences(struct i915_ggtt *ggtt) argument
[all...]
H A Dselftest_reset.c22 struct i915_ggtt *ggtt = gt->ggtt; local
34 if (!drm_mm_node_allocated(&ggtt->error_capture))
87 ggtt->vm.insert_page(&ggtt->vm, dma,
88 ggtt->error_capture.start,
94 s = io_mapping_map_wc(&ggtt->iomap,
95 ggtt->error_capture.start,
111 ggtt->vm.clear_range(&ggtt
[all...]
H A Dgen6_ppgtt.c166 gen6_ggtt_invalidate(ppgtt->base.vm.gt->ggtt);
286 struct i915_ggtt *ggtt = i915_vm_to_ggtt(vm); local
291 ppgtt->pd_addr = (gen6_pte_t __iomem *)ggtt->gsm + ggtt_offset;
382 struct i915_ggtt * const ggtt = ppgtt->base.vm.gt->ggtt; local
402 ppgtt->vma = i915_vma_instance(pd->pt.base, &ggtt->vm, NULL);
430 struct i915_ggtt * const ggtt = gt->ggtt; local
452 ppgtt->base.vm.pte_encode = ggtt->vm.pte_encode;
/linux-master/drivers/gpu/drm/i915/selftests/
H A Dmock_gtt.c109 struct i915_ggtt *ggtt = gt->ggtt; local
111 ggtt->vm.gt = gt;
112 ggtt->vm.i915 = gt->i915;
113 ggtt->vm.is_ggtt = true;
115 ggtt->gmadr = DEFINE_RES_MEM(0, 2048 * PAGE_SIZE);
116 ggtt->mappable_end = resource_size(&ggtt->gmadr);
117 ggtt->vm.total = 4096 * PAGE_SIZE;
119 ggtt
133 mock_fini_ggtt(struct i915_ggtt *ggtt) argument
[all...]
H A Di915_gem_evict.c48 static int populate_ggtt(struct i915_ggtt *ggtt, struct list_head *objects) argument
57 obj = i915_gem_object_create_internal(ggtt->vm.i915,
75 count, ggtt->vm.total / PAGE_SIZE);
77 if (list_empty(&ggtt->vm.bound_list)) {
85 static void unpin_ggtt(struct i915_ggtt *ggtt) argument
89 list_for_each_entry(vma, &ggtt->vm.bound_list, vm_link)
94 static void cleanup_objects(struct i915_ggtt *ggtt, struct list_head *list) argument
104 i915_gem_drain_freed_objects(ggtt->vm.i915);
110 struct i915_ggtt *ggtt = gt->ggtt; local
156 struct i915_ggtt *ggtt = gt->ggtt; local
193 struct i915_ggtt *ggtt = gt->ggtt; local
244 struct i915_ggtt *ggtt = gt->ggtt; local
335 struct i915_ggtt *ggtt = gt->ggtt; local
379 struct i915_ggtt *ggtt = gt->ggtt; local
[all...]
H A Dmock_gtt.h33 void mock_fini_ggtt(struct i915_ggtt *ggtt);
H A Di915_gem.c45 struct i915_ggtt *ggtt = to_gt(i915)->ggtt; local
46 const u64 slot = ggtt->error_capture.start;
52 if (!i915_ggtt_has_aperture(ggtt))
60 ggtt->vm.insert_page(&ggtt->vm, dma, slot,
65 s = io_mapping_map_atomic_wc(&ggtt->iomap, slot);
73 ggtt->vm.clear_range(&ggtt->vm, slot, PAGE_SIZE);
106 i915_ggtt_suspend(to_gt(i915)->ggtt);
[all...]
H A Di915_gem_gtt.c1281 struct i915_ggtt *ggtt = to_gt(i915)->ggtt; local
1288 list_sort(NULL, &ggtt->vm.mm.hole_stack, sort_holes);
1289 drm_mm_for_each_hole(node, &ggtt->vm.mm, hole_start, hole_end) {
1293 if (ggtt->vm.mm.color_adjust)
1294 ggtt->vm.mm.color_adjust(node, 0,
1299 err = func(&ggtt->vm, hole_start, hole_end, end_time);
1346 struct i915_ggtt *ggtt = to_gt(i915)->ggtt; local
1353 if (!i915_ggtt_has_aperture(ggtt))
1478 struct i915_ggtt *ggtt = arg; local
1485 struct i915_ggtt *ggtt = arg; local
1492 struct i915_ggtt *ggtt = arg; local
1499 struct i915_ggtt *ggtt = arg; local
1533 struct i915_ggtt *ggtt = arg; local
1712 struct i915_ggtt *ggtt = arg; local
[all...]
H A Di915_vma.c83 pr_err("VMA ggtt status [%d] does not match parent [%d]\n",
151 struct i915_ggtt *ggtt = arg; local
152 struct drm_i915_private *i915 = ggtt->vm.i915;
258 struct i915_ggtt *ggtt = arg; local
269 VALID(0, PIN_GLOBAL | PIN_OFFSET_BIAS | (ggtt->mappable_end - 4096)),
270 VALID(0, PIN_GLOBAL | PIN_MAPPABLE | PIN_OFFSET_BIAS | (ggtt->mappable_end - 4096)),
271 VALID(0, PIN_GLOBAL | PIN_OFFSET_BIAS | (ggtt->vm.total - 4096)),
273 VALID(0, PIN_GLOBAL | PIN_MAPPABLE | PIN_OFFSET_FIXED | (ggtt->mappable_end - 4096)),
274 INVALID(0, PIN_GLOBAL | PIN_MAPPABLE | PIN_OFFSET_FIXED | ggtt->mappable_end),
275 VALID(0, PIN_GLOBAL | PIN_OFFSET_FIXED | (ggtt
546 struct i915_ggtt *ggtt = arg; local
792 struct i915_ggtt *ggtt = arg; local
[all...]
/linux-master/drivers/gpu/drm/i915/
H A Di915_vgpu.h39 int intel_vgt_balloon(struct i915_ggtt *ggtt);
40 void intel_vgt_deballoon(struct i915_ggtt *ggtt);
H A Di915_vgpu.c148 static void vgt_deballoon_space(struct i915_ggtt *ggtt, argument
151 struct drm_i915_private *dev_priv = ggtt->vm.i915;
161 ggtt->vm.reserved -= node->size;
167 * @ggtt: the global GGTT from which we reserved earlier
172 void intel_vgt_deballoon(struct i915_ggtt *ggtt) argument
174 struct drm_i915_private *dev_priv = ggtt->vm.i915;
177 if (!intel_vgpu_active(ggtt->vm.i915))
183 vgt_deballoon_space(ggtt, &bl_info.space[i]);
186 static int vgt_balloon_space(struct i915_ggtt *ggtt, argument
190 struct drm_i915_private *dev_priv = ggtt
253 intel_vgt_balloon(struct i915_ggtt *ggtt) argument
[all...]
H A Di915_gem.c63 insert_mappable_node(struct i915_ggtt *ggtt, struct drm_mm_node *node, u32 size) argument
67 err = mutex_lock_interruptible(&ggtt->vm.mutex);
72 err = drm_mm_insert_node_in_range(&ggtt->vm.mm, node,
74 0, ggtt->mappable_end,
77 mutex_unlock(&ggtt->vm.mutex);
83 remove_mappable_node(struct i915_ggtt *ggtt, struct drm_mm_node *node) argument
85 mutex_lock(&ggtt->vm.mutex);
87 mutex_unlock(&ggtt->vm.mutex);
95 struct i915_ggtt *ggtt = to_gt(i915)->ggtt; local
308 struct i915_ggtt *ggtt = to_gt(i915)->ggtt; local
369 struct i915_ggtt *ggtt = to_gt(i915)->ggtt; local
385 struct i915_ggtt *ggtt = to_gt(i915)->ggtt; local
548 struct i915_ggtt *ggtt = to_gt(i915)->ggtt; local
911 struct i915_ggtt *ggtt = to_gt(i915)->ggtt; local
[all...]
H A Di915_gem_gtt.c60 struct i915_ggtt *ggtt = to_gt(i915)->ggtt; local
63 if (unlikely(ggtt->do_idle_maps))
109 GEM_BUG_ON(vm == &to_gt(vm->i915)->ggtt->alias->vm);
209 GEM_BUG_ON(vm == &to_gt(vm->i915)->ggtt->alias->vm);
256 * mmap and GPU (i.e. ggtt/aliasing_ppgtt but not full-ppgtt):
/linux-master/drivers/gpu/drm/xe/compat-i915-headers/
H A Di915_vgpu.h36 static inline int intel_vgt_balloon(struct i915_ggtt *ggtt) argument
40 static inline void intel_vgt_deballoon(struct i915_ggtt *ggtt) argument
/linux-master/drivers/gpu/drm/xe/display/
H A Dxe_fb_pin.c21 struct xe_ggtt *ggtt = xe_device_get_root_tile(xe)->mem.ggtt; local
25 * by writing dpt/ggtt in a different order?
32 u64 pte = ggtt->pt_ops->pte_encode_bo(bo, src_idx * XE_PAGE_SIZE,
54 struct xe_ggtt *ggtt = xe_device_get_root_tile(xe)->mem.ggtt; local
56 = ggtt->pt_ops->pte_encode_bo;
85 struct xe_ggtt *ggtt = tile0->mem.ggtt; local
121 u64 pte = ggtt
157 write_ggtt_rotated(struct xe_bo *bo, struct xe_ggtt *ggtt, u32 *ggtt_ofs, u32 bo_ofs, u32 width, u32 height, u32 src_stride, u32 dst_stride) argument
186 struct xe_ggtt *ggtt = xe_device_get_root_tile(xe)->mem.ggtt; local
318 struct xe_ggtt *ggtt = xe_device_get_root_tile(xe)->mem.ggtt; local
[all...]
/linux-master/drivers/gpu/drm/i915/gem/
H A Di915_gem_tiling.c187 struct i915_ggtt *ggtt = to_gt(i915)->ggtt; local
195 mutex_lock(&ggtt->vm.mutex);
199 GEM_BUG_ON(vma->vm != &ggtt->vm);
212 list_splice(&unbind, &ggtt->vm.bound_list);
217 mutex_unlock(&ggtt->vm.mutex);
226 return to_gt(i915)->ggtt->bit_6_swizzle_x == I915_BIT_6_SWIZZLE_9_10_17 &&
351 if (!to_gt(dev_priv)->ggtt->num_fences)
377 args->swizzle_mode = to_gt(dev_priv)->ggtt->bit_6_swizzle_x;
379 args->swizzle_mode = to_gt(dev_priv)->ggtt
[all...]
/linux-master/drivers/gpu/drm/i915/gvt/
H A Daperture_gm.c65 mutex_lock(&gt->ggtt->vm.mutex);
67 ret = i915_gem_gtt_insert(&gt->ggtt->vm, NULL, node,
72 mutex_unlock(&gt->ggtt->vm.mutex);
102 mutex_lock(&gt->ggtt->vm.mutex);
104 mutex_unlock(&gt->ggtt->vm.mutex);
113 mutex_lock(&gt->ggtt->vm.mutex);
116 mutex_unlock(&gt->ggtt->vm.mutex);
179 mutex_lock(&gvt->gt->ggtt->vm.mutex);
186 mutex_unlock(&gvt->gt->ggtt->vm.mutex);
202 mutex_lock(&gvt->gt->ggtt
[all...]
/linux-master/drivers/gpu/drm/i915/display/
H A Dintel_fbdev_fb.c86 struct i915_ggtt *ggtt = to_gt(i915)->ggtt; local
90 (unsigned long)(ggtt->gmadr.start + i915_ggtt_offset(vma));

Completed in 221 milliseconds

1234