Home
last modified time | relevance | path

Searched refs:vma_res (Results 1 – 21 of 21) sorted by relevance

/linux-6.12.1/drivers/gpu/drm/i915/
Di915_vma_resource.c53 struct i915_vma_resource *vma_res = in i915_vma_resource_alloc() local
56 return vma_res ? vma_res : ERR_PTR(-ENOMEM); in i915_vma_resource_alloc()
63 void i915_vma_resource_free(struct i915_vma_resource *vma_res) in i915_vma_resource_free() argument
65 if (vma_res) in i915_vma_resource_free()
66 kmem_cache_free(slab_vma_resources, vma_res); in i915_vma_resource_free()
81 struct i915_vma_resource *vma_res = in unbind_fence_free_rcu() local
82 container_of(head, typeof(*vma_res), unbind_fence.rcu); in unbind_fence_free_rcu()
84 i915_vma_resource_free(vma_res); in unbind_fence_free_rcu()
89 struct i915_vma_resource *vma_res = in unbind_fence_release() local
90 container_of(fence, typeof(*vma_res), unbind_fence); in unbind_fence_release()
[all …]
Di915_vma_resource.h141 bool i915_vma_resource_hold(struct i915_vma_resource *vma_res,
144 void i915_vma_resource_unhold(struct i915_vma_resource *vma_res,
149 void i915_vma_resource_free(struct i915_vma_resource *vma_res);
151 struct dma_fence *i915_vma_resource_unbind(struct i915_vma_resource *vma_res,
154 void __i915_vma_resource_init(struct i915_vma_resource *vma_res);
163 *i915_vma_resource_get(struct i915_vma_resource *vma_res) in i915_vma_resource_get() argument
165 dma_fence_get(&vma_res->unbind_fence); in i915_vma_resource_get()
166 return vma_res; in i915_vma_resource_get()
173 static inline void i915_vma_resource_put(struct i915_vma_resource *vma_res) in i915_vma_resource_put() argument
175 dma_fence_put(&vma_res->unbind_fence); in i915_vma_resource_put()
[all …]
Di915_vma.c348 struct i915_vma_resource *vma_res; member
358 struct i915_vma_resource *vma_res = vw->vma_res; in __vma_bind() local
369 vma_res->ops->bind_vma(vma_res->vm, &vw->stash, in __vma_bind()
370 vma_res, vw->pat_index, vw->flags); in __vma_bind()
381 if (vw->vma_res) in __vma_release()
382 i915_vma_resource_put(vw->vma_res); in __vma_release()
447 i915_vma_resource_init_from_vma(struct i915_vma_resource *vma_res, in i915_vma_resource_init_from_vma() argument
452 i915_vma_resource_init(vma_res, vma->vm, vma->pages, &vma->page_sizes, in i915_vma_resource_init_from_vma()
476 struct i915_vma_resource *vma_res) in i915_vma_bind() argument
489 i915_vma_resource_free(vma_res); in i915_vma_bind()
[all …]
Di915_gpu_error.c1090 const struct i915_vma_resource *vma_res, in i915_vma_coredump_create() argument
1103 if (!vma_res || !vma_res->bi.pages || !compress) in i915_vma_coredump_create()
1119 dst->gtt_offset = vma_res->start; in i915_vma_coredump_create()
1120 dst->gtt_size = vma_res->node_size; in i915_vma_coredump_create()
1121 dst->gtt_page_sizes = vma_res->page_sizes_gtt; in i915_vma_coredump_create()
1129 for_each_sgt_daddr(dma, iter, vma_res->bi.pages) { in i915_vma_coredump_create()
1155 } else if (vma_res->bi.lmem) { in i915_vma_coredump_create()
1156 struct intel_memory_region *mem = vma_res->mr; in i915_vma_coredump_create()
1159 for_each_sgt_daddr(dma, iter, vma_res->bi.pages) { in i915_vma_coredump_create()
1179 for_each_sgt_page(page, iter, vma_res->bi.pages) { in i915_vma_coredump_create()
[all …]
Di915_vma.h256 struct i915_vma_resource *vma_res);
487 void i915_vma_resource_init_from_vma(struct i915_vma_resource *vma_res,
Di915_request.h55 struct i915_vma_resource *vma_res; member
Di915_request.c336 i915_vma_resource_put(capture->vma_res); in i915_request_free_capture_list()
/linux-6.12.1/drivers/gpu/drm/i915/gt/
Dintel_ggtt.c466 struct i915_vma_resource *vma_res, in gen8_ggtt_insert_entries() argument
483 gte += (vma_res->start - vma_res->guard) / I915_GTT_PAGE_SIZE; in gen8_ggtt_insert_entries()
484 end = gte + vma_res->guard / I915_GTT_PAGE_SIZE; in gen8_ggtt_insert_entries()
487 end += (vma_res->node_size + vma_res->guard) / I915_GTT_PAGE_SIZE; in gen8_ggtt_insert_entries()
489 for_each_sgt_daddr(addr, iter, vma_res->bi.pages) in gen8_ggtt_insert_entries()
505 struct i915_vma_resource *vma_res, in __gen8_ggtt_insert_entries_bind() argument
514 start = (vma_res->start - vma_res->guard) / I915_GTT_PAGE_SIZE; in __gen8_ggtt_insert_entries_bind()
515 end = start + vma_res->guard / I915_GTT_PAGE_SIZE; in __gen8_ggtt_insert_entries_bind()
520 end += (vma_res->node_size + vma_res->guard) / I915_GTT_PAGE_SIZE; in __gen8_ggtt_insert_entries_bind()
521 if (!gen8_ggtt_bind_ptes(ggtt, start, vma_res->bi.pages, in __gen8_ggtt_insert_entries_bind()
[all …]
Dintel_ppgtt.c184 struct i915_vma_resource *vma_res, in ppgtt_bind_vma() argument
190 if (!vma_res->allocated) { in ppgtt_bind_vma()
191 vm->allocate_va_range(vm, stash, vma_res->start, in ppgtt_bind_vma()
192 vma_res->vma_size); in ppgtt_bind_vma()
193 vma_res->allocated = true; in ppgtt_bind_vma()
198 if (vma_res->bi.readonly) in ppgtt_bind_vma()
200 if (vma_res->bi.lmem) in ppgtt_bind_vma()
203 vm->insert_entries(vm, vma_res, pat_index, pte_flags); in ppgtt_bind_vma()
208 struct i915_vma_resource *vma_res) in ppgtt_unbind_vma() argument
210 if (!vma_res->allocated) in ppgtt_unbind_vma()
[all …]
Dgen8_ppgtt.c504 struct i915_vma_resource *vma_res, in xehp_ppgtt_insert_huge() argument
511 u64 start = vma_res->start; in xehp_ppgtt_insert_huge()
512 u64 end = start + vma_res->vma_size; in xehp_ppgtt_insert_huge()
531 if (vma_res->bi.page_sizes.sg & I915_GTT_PAGE_SIZE_2M && in xehp_ppgtt_insert_huge()
544 if (vma_res->bi.page_sizes.sg & I915_GTT_PAGE_SIZE_64K) { in xehp_ppgtt_insert_huge()
607 vma_res->page_sizes_gtt |= page_size; in xehp_ppgtt_insert_huge()
612 struct i915_vma_resource *vma_res, in gen8_ppgtt_insert_huge() argument
619 u64 start = vma_res->start; in gen8_ppgtt_insert_huge()
634 if (vma_res->bi.page_sizes.sg & I915_GTT_PAGE_SIZE_2M && in gen8_ppgtt_insert_huge()
651 vma_res->bi.page_sizes.sg & I915_GTT_PAGE_SIZE_64K && in gen8_ppgtt_insert_huge()
[all …]
Dgen6_ppgtt.c111 struct i915_vma_resource *vma_res, in gen6_ppgtt_insert_entries() argument
117 unsigned int first_entry = vma_res->start / I915_GTT_PAGE_SIZE; in gen6_ppgtt_insert_entries()
121 struct sgt_dma iter = sgt_dma(vma_res); in gen6_ppgtt_insert_entries()
147 vma_res->page_sizes_gtt = I915_GTT_PAGE_SIZE; in gen6_ppgtt_insert_entries()
282 struct i915_vma_resource *vma_res, in pd_vma_bind() argument
287 struct gen6_ppgtt *ppgtt = vma_res->private; in pd_vma_bind()
288 u32 ggtt_offset = vma_res->start / I915_GTT_PAGE_SIZE; in pd_vma_bind()
297 struct i915_vma_resource *vma_res) in pd_vma_unbind() argument
299 struct gen6_ppgtt *ppgtt = vma_res->private; in pd_vma_unbind()
Dintel_gtt.h235 struct i915_vma_resource *vma_res,
243 struct i915_vma_resource *vma_res);
331 struct i915_vma_resource *vma_res,
340 struct i915_vma_resource *vma_res,
587 struct i915_vma_resource *vma_res,
591 struct i915_vma_resource *vma_res);
665 struct i915_vma_resource *vma_res,
669 struct i915_vma_resource *vma_res);
692 } sgt_dma(struct i915_vma_resource *vma_res) { in sgt_dma() argument
693 struct scatterlist *sg = vma_res->bi.pages->sgl; in sgt_dma()
Dintel_ggtt_gmch.c31 struct i915_vma_resource *vma_res, in gmch_ggtt_insert_entries() argument
38 intel_gmch_gtt_insert_sg_entries(vma_res->bi.pages, vma_res->start >> PAGE_SHIFT, in gmch_ggtt_insert_entries()
Dintel_engine_cs.c2220 struct i915_vma_resource *vma_res = rq->batch_res; in print_request_ring() local
2227 vma_res ? upper_32_bits(vma_res->start) : ~0u, in print_request_ring()
2228 vma_res ? lower_32_bits(vma_res->start) : ~0u); in print_request_ring()
/linux-6.12.1/drivers/gpu/drm/i915/display/
Dintel_dpt.c55 struct i915_vma_resource *vma_res, in dpt_insert_entries() argument
71 i = vma_res->start / I915_GTT_PAGE_SIZE; in dpt_insert_entries()
72 for_each_sgt_daddr(addr, sgt_iter, vma_res->bi.pages) in dpt_insert_entries()
83 struct i915_vma_resource *vma_res, in dpt_bind_vma() argument
89 if (vma_res->bound_flags) in dpt_bind_vma()
94 if (vm->has_read_only && vma_res->bi.readonly) in dpt_bind_vma()
96 if (vma_res->bi.lmem) in dpt_bind_vma()
99 vm->insert_entries(vm, vma_res, pat_index, pte_flags); in dpt_bind_vma()
101 vma_res->page_sizes_gtt = I915_GTT_PAGE_SIZE; in dpt_bind_vma()
108 vma_res->bound_flags = I915_VMA_GLOBAL_BIND | I915_VMA_LOCAL_BIND; in dpt_bind_vma()
[all …]
/linux-6.12.1/drivers/gpu/drm/i915/selftests/
Dmock_gtt.c36 struct i915_vma_resource *vma_res, in mock_insert_entries() argument
43 struct i915_vma_resource *vma_res, in mock_bind_ppgtt() argument
48 vma_res->bound_flags |= flags; in mock_bind_ppgtt()
52 struct i915_vma_resource *vma_res) in mock_unbind_ppgtt() argument
96 struct i915_vma_resource *vma_res, in mock_bind_ggtt() argument
103 struct i915_vma_resource *vma_res) in mock_unbind_ggtt() argument
Di915_gem_gtt.c1507 struct i915_vma_resource *vma_res; in reserve_gtt_with_resource() local
1511 vma_res = i915_vma_resource_alloc(); in reserve_gtt_with_resource()
1512 if (IS_ERR(vma_res)) in reserve_gtt_with_resource()
1513 return PTR_ERR(vma_res); in reserve_gtt_with_resource()
1521 i915_vma_resource_init_from_vma(vma_res, vma); in reserve_gtt_with_resource()
1522 vma->resource = vma_res; in reserve_gtt_with_resource()
1524 kfree(vma_res); in reserve_gtt_with_resource()
1688 struct i915_vma_resource *vma_res; in insert_gtt_with_resource() local
1692 vma_res = i915_vma_resource_alloc(); in insert_gtt_with_resource()
1693 if (IS_ERR(vma_res)) in insert_gtt_with_resource()
[all …]
/linux-6.12.1/drivers/gpu/drm/i915/gt/uc/
Dintel_uc_fw.c1042 struct i915_vma_resource *vma_res = &uc_fw->vma_res; in uc_fw_bind_ggtt() local
1048 vma_res->start = uc_fw_ggtt_offset(uc_fw); in uc_fw_bind_ggtt()
1049 vma_res->node_size = obj->base.size; in uc_fw_bind_ggtt()
1050 vma_res->bi.pages = obj->mm.pages; in uc_fw_bind_ggtt()
1056 drm_clflush_sg(vma_res->bi.pages); in uc_fw_bind_ggtt()
1062 ggtt->vm.raw_insert_entries(&ggtt->vm, vma_res, in uc_fw_bind_ggtt()
1067 ggtt->vm.insert_entries(&ggtt->vm, vma_res, in uc_fw_bind_ggtt()
1076 struct i915_vma_resource *vma_res = &uc_fw->vma_res; in uc_fw_unbind_ggtt() local
1078 if (!vma_res->node_size) in uc_fw_unbind_ggtt()
1081 ggtt->vm.clear_range(&ggtt->vm, vma_res->start, vma_res->node_size); in uc_fw_unbind_ggtt()
[all …]
Dintel_uc_fw.h115 struct i915_vma_resource vma_res; member
Dintel_huc_fw.c61 msg_in->huc_in.huc_base_address = huc->fw.vma_res.start; in intel_huc_fw_auth_via_gsccs()
/linux-6.12.1/drivers/gpu/drm/i915/gem/
Di915_gem_execbuffer.c2028 capture->vma_res = i915_vma_resource_get(vma->resource); in eb_capture_stage()