Home
last modified time | relevance | path

Searched refs:sync_file (Results 1 – 25 of 36) sorted by relevance

12

/OK3568_Linux_fs/kernel/drivers/dma-buf/
H A Dsync_file.c22 static struct sync_file *sync_file_alloc(void) in sync_file_alloc()
24 struct sync_file *sync_file; in sync_file_alloc() local
26 sync_file = kzalloc(sizeof(*sync_file), GFP_KERNEL); in sync_file_alloc()
27 if (!sync_file) in sync_file_alloc()
30 sync_file->file = anon_inode_getfile("sync_file", &sync_file_fops, in sync_file_alloc()
31 sync_file, 0); in sync_file_alloc()
32 if (IS_ERR(sync_file->file)) in sync_file_alloc()
35 init_waitqueue_head(&sync_file->wq); in sync_file_alloc()
37 INIT_LIST_HEAD(&sync_file->cb.node); in sync_file_alloc()
39 return sync_file; in sync_file_alloc()
[all …]
H A Dsync_debug.c36 void sync_file_debug_add(struct sync_file *sync_file) in sync_file_debug_add() argument
41 list_add_tail(&sync_file->sync_file_list, &sync_file_list_head); in sync_file_debug_add()
45 void sync_file_debug_remove(struct sync_file *sync_file) in sync_file_debug_remove() argument
50 list_del(&sync_file->sync_file_list); in sync_file_debug_remove()
122 struct sync_file *sync_file) in sync_print_sync_file() argument
127 seq_printf(s, "[%p] %s: %s\n", sync_file, in sync_print_sync_file()
128 sync_file_get_name(sync_file, buf, sizeof(buf)), in sync_print_sync_file()
129 sync_status_str(dma_fence_get_status(sync_file->fence))); in sync_print_sync_file()
131 if (dma_fence_is_array(sync_file->fence)) { in sync_print_sync_file()
132 struct dma_fence_array *array = to_dma_fence_array(sync_file->fence); in sync_print_sync_file()
[all …]
H A Dsync_debug.h70 void sync_file_debug_add(struct sync_file *fence);
71 void sync_file_debug_remove(struct sync_file *fence);
75 static inline void sync_file_debug_add(struct sync_file *fence) {} in sync_file_debug_add()
76 static inline void sync_file_debug_remove(struct sync_file *fence) {} in sync_file_debug_remove()
H A Dsw_sync.c335 struct sync_file *sync_file; in sw_sync_ioctl_create_fence() local
352 sync_file = sync_file_create(&pt->base); in sw_sync_ioctl_create_fence()
354 if (!sync_file) { in sw_sync_ioctl_create_fence()
361 fput(sync_file->file); in sw_sync_ioctl_create_fence()
366 fd_install(fd, sync_file->file); in sw_sync_ioctl_create_fence()
H A DMakefile7 obj-$(CONFIG_SYNC_FILE) += sync_file.o
H A DKconfig52 Documentation/driver-api/sync_file.rst.
/OK3568_Linux_fs/kernel/Documentation/driver-api/
H A Dsync_file.rst8 sync_file API is, and how drivers can support it. Sync file is the carrier of
12 The sync_file API is meant to be used to send and receive fence information
15 driver) sends the fence related to the buffer to userspace via a sync_file.
17 The sync_file then can be sent to the consumer (DRM driver for example), that
32 Sync files can go either to or from userspace. When a sync_file is sent from
39 On the other hand if the driver receives fence(s) through a sync_file from
47 When a driver needs to send an out-fence userspace it creates a sync_file.
51 struct sync_file *sync_file_create(struct dma_fence *fence);
53 The caller pass the out-fence and gets back the sync_file. That is just the
54 first step, next it needs to install an fd on sync_file->file. So it gets an
[all …]
H A Dindex.rst101 sync_file
H A Ddma-buf.rst175 .. kernel-doc:: drivers/dma-buf/sync_file.c
178 .. kernel-doc:: include/linux/sync_file.h
/OK3568_Linux_fs/kernel/drivers/rknpu/
H A Drknpu_fence.c63 struct sync_file *sync_file = NULL; in rknpu_fence_get_fd() local
73 sync_file = sync_file_create(job->fence); in rknpu_fence_get_fd()
74 if (!sync_file) in rknpu_fence_get_fd()
77 fd_install(fence_fd, sync_file->file); in rknpu_fence_get_fd()
/OK3568_Linux_fs/kernel/include/linux/
H A Dsync_file.h35 struct sync_file { struct
58 struct sync_file *sync_file_create(struct dma_fence *fence); argument
60 char *sync_file_get_name(struct sync_file *sync_file, char *buf, int len);
/OK3568_Linux_fs/kernel/drivers/video/rockchip/rve/
H A Drve_fence.c64 struct sync_file *sync_file = NULL; in rve_out_fence_get_fd() local
74 sync_file = sync_file_create(job->out_fence); in rve_out_fence_get_fd()
75 if (!sync_file) in rve_out_fence_get_fd()
78 fd_install(fence_fd, sync_file->file); in rve_out_fence_get_fd()
/OK3568_Linux_fs/kernel/drivers/video/rockchip/rga3/
H A Drga_fence.c76 struct sync_file *sync_file = NULL; in rga_dma_fence_get_fd() local
86 sync_file = sync_file_create(fence); in rga_dma_fence_get_fd()
87 if (!sync_file) { in rga_dma_fence_get_fd()
92 fd_install(fence_fd, sync_file->file); in rga_dma_fence_get_fd()
/OK3568_Linux_fs/kernel/drivers/gpu/arm/midgard/
H A Dmali_kbase_sync_file.c64 struct sync_file *sync_file; in kbase_sync_fence_out_create() local
81 sync_file = sync_file_create(fence); in kbase_sync_fence_out_create()
82 if (!sync_file) { in kbase_sync_fence_out_create()
90 fput(sync_file->file); in kbase_sync_fence_out_create()
95 fd_install(fd, sync_file->file); in kbase_sync_fence_out_create()
/OK3568_Linux_fs/kernel/drivers/gpu/arm/bifrost/
H A Dmali_kbase_sync_file.c66 struct sync_file *sync_file; in kbase_sync_fence_out_create() local
83 sync_file = sync_file_create(fence); in kbase_sync_fence_out_create()
84 if (!sync_file) { in kbase_sync_fence_out_create()
94 fput(sync_file->file); in kbase_sync_fence_out_create()
99 fd_install(fd, sync_file->file); in kbase_sync_fence_out_create()
/OK3568_Linux_fs/kernel/drivers/gpu/drm/virtio/
H A Dvirtgpu_ioctl.c84 struct sync_file *sync_file; in virtio_gpu_execbuffer_ioctl() local
169 sync_file = sync_file_create(&out_fence->f); in virtio_gpu_execbuffer_ioctl()
170 if (!sync_file) { in virtio_gpu_execbuffer_ioctl()
177 fd_install(out_fence_fd, sync_file->file); in virtio_gpu_execbuffer_ioctl()
/OK3568_Linux_fs/kernel/drivers/gpu/arm/bifrost/csf/
H A Dmali_kbase_csf_kcpu.h381 struct base_fence *fence, struct sync_file **sync_file, int *fd);
H A Dmali_kbase_csf_kcpu.c1590 struct base_fence *fence, struct sync_file **sync_file, in kbasep_kcpu_fence_signal_init() argument
1633 *sync_file = sync_file_create(fence_out); in kbasep_kcpu_fence_signal_init()
1634 if (!(*sync_file)) { in kbasep_kcpu_fence_signal_init()
1653 fput((*sync_file)->file); in kbasep_kcpu_fence_signal_init()
1671 struct sync_file *sync_file = NULL; in kbase_kcpu_fence_signal_prepare() local
1680 ret = kbasep_kcpu_fence_signal_init(kcpu_queue, current_command, &fence, &sync_file, &fd); in kbase_kcpu_fence_signal_prepare()
1694 fd_install(fd, sync_file->file); in kbase_kcpu_fence_signal_prepare()
1698 fput(sync_file->file); in kbase_kcpu_fence_signal_prepare()
1717 struct base_fence *fence, struct sync_file **sync_file, int *fd) in kbase_kcpu_fence_signal_init() argument
1719 if (!kcpu_queue || !current_command || !fence || !sync_file || !fd) in kbase_kcpu_fence_signal_init()
[all …]
/OK3568_Linux_fs/kernel/drivers/gpu/drm/etnaviv/
H A Detnaviv_gem_submit.c435 struct sync_file *sync_file = NULL; in etnaviv_ioctl_gem_submit() local
600 sync_file = sync_file_create(submit->out_fence); in etnaviv_ioctl_gem_submit()
601 if (!sync_file) { in etnaviv_ioctl_gem_submit()
605 fd_install(out_fence_fd, sync_file->file); in etnaviv_ioctl_gem_submit()
/OK3568_Linux_fs/kernel/drivers/gpu/drm/msm/
H A Dmsm_gem_submit.c585 struct sync_file *sync_file = NULL; in msm_ioctl_gem_submit() local
781 sync_file = sync_file_create(submit->fence); in msm_ioctl_gem_submit()
782 if (!sync_file) { in msm_ioctl_gem_submit()
793 fd_install(out_fence_fd, sync_file->file); in msm_ioctl_gem_submit()
/OK3568_Linux_fs/kernel/drivers/gpu/drm/
H A Ddrm_atomic_uapi.c1089 struct sync_file *sync_file; member
1103 fence_state->sync_file = sync_file_create(fence); in setup_out_fence()
1104 if (!fence_state->sync_file) in setup_out_fence()
1246 fence_state[i].sync_file->file); in complete_signaling()
1269 if (fence_state[i].sync_file) in complete_signaling()
1270 fput(fence_state[i].sync_file->file); in complete_signaling()
H A Ddrm_syncobj.c690 struct sync_file *sync_file; in drm_syncobj_export_sync_file() local
700 sync_file = sync_file_create(fence); in drm_syncobj_export_sync_file()
704 if (!sync_file) { in drm_syncobj_export_sync_file()
709 fd_install(fd, sync_file->file); in drm_syncobj_export_sync_file()
/OK3568_Linux_fs/kernel/drivers/gpu/arm/mali400/mali/linux/
H A Dmali_internal_sync.h82 struct mali_internal_sync_fence *sync_file; member
H A Dmali_internal_sync.c85 sync_fence = check->sync_file; in mali_internal_fence_check_cb_func()
114 sync_fence->cbs[fence_num].sync_file = sync_fence; in mali_internal_sync_fence_add_fence()
/OK3568_Linux_fs/kernel/drivers/gpu/drm/amd/amdgpu/
H A Damdgpu_cs.c1439 struct sync_file *sync_file; in amdgpu_cs_fence_to_handle_ioctl() local
1475 sync_file = sync_file_create(fence); in amdgpu_cs_fence_to_handle_ioctl()
1477 if (!sync_file) { in amdgpu_cs_fence_to_handle_ioctl()
1482 fd_install(fd, sync_file->file); in amdgpu_cs_fence_to_handle_ioctl()

12