Home
last modified time | relevance | path

Searched refs:syncobjs (Results 1 – 5 of 5) sorted by relevance

/linux/drivers/gpu/drm/msm/
H A Dmsm_syncobj.c17 struct drm_syncobj **syncobjs = NULL; in msm_syncobj_parse_deps() local
22 syncobjs = kzalloc_objs(*syncobjs, nr_in_syncobjs, in msm_syncobj_parse_deps()
24 if (!syncobjs) in msm_syncobj_parse_deps()
55 syncobjs[i] = drm_syncobj_find(file, syncobj_desc.handle); in msm_syncobj_parse_deps()
56 if (!syncobjs[i]) { in msm_syncobj_parse_deps()
65 if (syncobjs[j]) in msm_syncobj_parse_deps()
66 drm_syncobj_put(syncobjs[j]); in msm_syncobj_parse_deps()
68 kfree(syncobjs); in msm_syncobj_parse_deps()
71 return syncobjs; in msm_syncobj_parse_deps()
75 msm_syncobj_reset(struct drm_syncobj **syncobjs, uint32_t nr_syncobjs) in msm_syncobj_reset() argument
[all …]
/linux/drivers/gpu/drm/
H A Ddrm_syncobj.c1033 static signed long drm_syncobj_array_wait_timeout(struct drm_syncobj **syncobjs, in drm_syncobj_array_wait_timeout() argument
1081 fence = drm_syncobj_fence_get(syncobjs[i]); in drm_syncobj_array_wait_timeout()
1121 drm_syncobj_fence_add_wait(syncobjs[i], &entries[i]); in drm_syncobj_array_wait_timeout()
1180 drm_syncobj_remove_wait(syncobjs[i], &entries[i]); in drm_syncobj_array_wait_timeout()
1231 struct drm_syncobj **syncobjs, bool timeline, in drm_syncobj_array_wait() argument
1239 timeout = drm_syncobj_array_wait_timeout(syncobjs, in drm_syncobj_array_wait()
1250 timeout = drm_syncobj_array_wait_timeout(syncobjs, in drm_syncobj_array_wait()
1269 struct drm_syncobj **syncobjs; in drm_syncobj_array_find() local
1282 syncobjs = kmalloc_objs(*syncobjs, count_handles); in drm_syncobj_array_find()
1283 if (syncobjs == NULL) { in drm_syncobj_array_find()
[all …]
/linux/drivers/gpu/drm/virtio/
H A Dvirtgpu_submit.c75 static void virtio_gpu_free_syncobjs(struct drm_syncobj **syncobjs, in virtio_gpu_free_syncobjs() argument
81 if (syncobjs[i]) in virtio_gpu_free_syncobjs()
82 drm_syncobj_put(syncobjs[i]); in virtio_gpu_free_syncobjs()
85 kvfree(syncobjs); in virtio_gpu_free_syncobjs()
95 struct drm_syncobj **syncobjs; in virtio_gpu_parse_deps() local
107 syncobjs = kvzalloc_objs(*syncobjs, num_in_syncobjs); in virtio_gpu_parse_deps()
108 if (!syncobjs) in virtio_gpu_parse_deps()
141 syncobjs[i] = drm_syncobj_find(submit->file, in virtio_gpu_parse_deps()
143 if (!syncobjs[i]) { in virtio_gpu_parse_deps()
151 virtio_gpu_free_syncobjs(syncobjs, i); in virtio_gpu_parse_deps()
[all …]
/linux/Documentation/gpu/
H A Ddrm-vm-bind-async.rst78 Asynchronous VM_BIND accepts both in-syncobjs and out-syncobjs. While the
79 IOCTL may return immediately, the VM_BIND operations wait for the in-syncobjs
80 before modifying the GPU page-tables, and signal the out-syncobjs when
82 awaits for the out-syncobjs will see the change. Errors are reported
89 the in-syncobjs needs to signal before the first operation starts to
90 execute, and the out-syncobjs signal after the last operation
95 out-syncobjs and internally in KMD to signal bind completion, any
106 fences gated by a long-running workload and used as in-syncobjs for the
108 above). Second, any dma-fences used as in-syncobjs for VM_BIND
111 out-syncobjs, so while theoretically possible the use of them is
/linux/drivers/gpu/drm/panthor/
H A Dpanthor_sched.c626 struct panthor_kernel_bo *syncobjs; member
956 panthor_kernel_bo_destroy(group->syncobjs); in group_release_work()
2193 syncobj = group->syncobjs->kmap + (i * sizeof(*syncobj)); in group_term_post_processing()
3054 syncobj = group->syncobjs->kmap + in queue_check_job_completion()
3181 params->sync_addr = panthor_kernel_bo_gpuva(group->syncobjs) + in get_job_cs_params()
3622 group->fdinfo.kbo_sizes += group->syncobjs->obj->size; in add_group_kbo_sizes()
3710 group->syncobjs = panthor_kernel_bo_create(ptdev, group->vm, in panthor_group_create()
3718 if (IS_ERR(group->syncobjs)) { in panthor_group_create()
3719 ret = PTR_ERR(group->syncobjs); in panthor_group_create()
3723 ret = panthor_kernel_bo_vmap(group->syncobjs); in panthor_group_create()
[all …]