Home
last modified time | relevance | path

Searched refs:dma_fence (Results 1 – 25 of 214) sorted by relevance

123456789

/openbmc/linux/include/linux/
H A Ddma-fence.h25 struct dma_fence;
65 struct dma_fence { struct
105 typedef void (*dma_fence_func_t)(struct dma_fence *fence, argument
143 const char * (*get_driver_name)(struct dma_fence *fence);
155 const char * (*get_timeline_name)(struct dma_fence *fence);
192 bool (*enable_signaling)(struct dma_fence *fence);
209 bool (*signaled)(struct dma_fence *fence);
227 signed long (*wait)(struct dma_fence *fence,
238 void (*release)(struct dma_fence *fence);
248 void (*fence_value_str)(struct dma_fence *fence, char *str, int size);
[all …]
H A Ddma-fence-chain.h26 struct dma_fence base;
27 struct dma_fence __rcu *prev;
29 struct dma_fence *fence;
61 to_dma_fence_chain(struct dma_fence *fence) in to_dma_fence_chain()
76 static inline struct dma_fence *
77 dma_fence_chain_contained(struct dma_fence *fence) in dma_fence_chain_contained()
122 struct dma_fence *dma_fence_chain_walk(struct dma_fence *fence);
123 int dma_fence_chain_find_seqno(struct dma_fence **pfence, uint64_t seqno);
125 struct dma_fence *prev,
126 struct dma_fence *fence,
H A Ddma-fence-unwrap.h11 struct dma_fence;
22 struct dma_fence *chain;
26 struct dma_fence *array;
33 struct dma_fence *dma_fence_unwrap_first(struct dma_fence *head,
35 struct dma_fence *dma_fence_unwrap_next(struct dma_fence_unwrap *cursor);
51 struct dma_fence *__dma_fence_unwrap_merge(unsigned int num_fences,
52 struct dma_fence **fences,
69 struct dma_fence *__f[] = { __VA_ARGS__ }; \
H A Ddma-fence-array.h38 struct dma_fence base;
43 struct dma_fence **fences;
56 to_dma_fence_array(struct dma_fence *fence) in to_dma_fence_array()
80 struct dma_fence **fences,
84 bool dma_fence_match_context(struct dma_fence *fence, u64 context);
86 struct dma_fence *dma_fence_array_first(struct dma_fence *head);
87 struct dma_fence *dma_fence_array_next(struct dma_fence *head,
H A Ddma-resv.h201 struct dma_fence *fence;
219 struct dma_fence *dma_resv_iter_first_unlocked(struct dma_resv_iter *cursor);
220 struct dma_fence *dma_resv_iter_next_unlocked(struct dma_resv_iter *cursor);
221 struct dma_fence *dma_resv_iter_first(struct dma_resv_iter *cursor);
222 struct dma_fence *dma_resv_iter_next(struct dma_resv_iter *cursor);
470 void dma_resv_add_fence(struct dma_resv *obj, struct dma_fence *fence,
473 struct dma_fence *fence,
476 unsigned int *num_fences, struct dma_fence ***fences);
478 struct dma_fence **fence);
/openbmc/linux/include/trace/events/
H A Ddma_fence.h3 #define TRACE_SYSTEM dma_fence
10 struct dma_fence;
12 DECLARE_EVENT_CLASS(dma_fence,
14 TP_PROTO(struct dma_fence *fence),
37 DEFINE_EVENT(dma_fence, dma_fence_emit,
39 TP_PROTO(struct dma_fence *fence),
44 DEFINE_EVENT(dma_fence, dma_fence_init,
46 TP_PROTO(struct dma_fence *fence),
51 DEFINE_EVENT(dma_fence, dma_fence_destroy,
53 TP_PROTO(struct dma_fence *fence),
[all …]
/openbmc/linux/drivers/dma-buf/
H A Ddma-fence-chain.c12 static bool dma_fence_chain_enable_signaling(struct dma_fence *fence);
21 static struct dma_fence *dma_fence_chain_get_prev(struct dma_fence_chain *chain) in dma_fence_chain_get_prev()
23 struct dma_fence *prev; in dma_fence_chain_get_prev()
39 struct dma_fence *dma_fence_chain_walk(struct dma_fence *fence) in dma_fence_chain_walk()
42 struct dma_fence *prev, *replacement, *tmp; in dma_fence_chain_walk()
90 int dma_fence_chain_find_seqno(struct dma_fence **pfence, uint64_t seqno) in dma_fence_chain_find_seqno()
112 static const char *dma_fence_chain_get_driver_name(struct dma_fence *fence) in dma_fence_chain_get_driver_name()
117 static const char *dma_fence_chain_get_timeline_name(struct dma_fence *fence) in dma_fence_chain_get_timeline_name()
135 static void dma_fence_chain_cb(struct dma_fence *f, struct dma_fence_cb *cb) in dma_fence_chain_cb()
145 static bool dma_fence_chain_enable_signaling(struct dma_fence *fence) in dma_fence_chain_enable_signaling()
[all …]
H A Ddma-fence.c28 static struct dma_fence dma_fence_stub;
114 static const char *dma_fence_stub_get_name(struct dma_fence *fence) in dma_fence_stub_get_name()
131 struct dma_fence *dma_fence_get_stub(void) in dma_fence_get_stub()
157 struct dma_fence *dma_fence_allocate_private_stub(ktime_t timestamp) in dma_fence_allocate_private_stub()
159 struct dma_fence *fence; in dma_fence_allocate_private_stub()
367 int dma_fence_signal_timestamp_locked(struct dma_fence *fence, in dma_fence_signal_timestamp_locked()
410 int dma_fence_signal_timestamp(struct dma_fence *fence, ktime_t timestamp) in dma_fence_signal_timestamp()
442 int dma_fence_signal_locked(struct dma_fence *fence) in dma_fence_signal_locked()
461 int dma_fence_signal(struct dma_fence *fence) in dma_fence_signal()
501 dma_fence_wait_timeout(struct dma_fence *fence, bool intr, signed long timeout) in dma_fence_wait_timeout()
[all …]
H A Ddma-fence-unwrap.c18 static struct dma_fence *
34 struct dma_fence *dma_fence_unwrap_first(struct dma_fence *head, in dma_fence_unwrap_first()
49 struct dma_fence *dma_fence_unwrap_next(struct dma_fence_unwrap *cursor) in dma_fence_unwrap_next()
51 struct dma_fence *tmp; in dma_fence_unwrap_next()
66 struct dma_fence *a = *(struct dma_fence **)_a; in fence_cmp()
67 struct dma_fence *b = *(struct dma_fence **)_b; in fence_cmp()
83 struct dma_fence *__dma_fence_unwrap_merge(unsigned int num_fences, in __dma_fence_unwrap_merge()
84 struct dma_fence **fences, in __dma_fence_unwrap_merge()
88 struct dma_fence *tmp, **array; in __dma_fence_unwrap_merge()
H A Dst-dma-fence.c20 struct dma_fence base;
22 } *to_mock_fence(struct dma_fence *f) { in to_mock_fence()
26 static const char *mock_name(struct dma_fence *f) in mock_name()
31 static void mock_fence_release(struct dma_fence *f) in mock_fence_release()
41 static void mock_wakeup(struct dma_fence *f, struct dma_fence_cb *cb) in mock_wakeup()
46 static long mock_wait(struct dma_fence *f, bool intr, long timeout) in mock_wait()
83 static struct dma_fence *mock_fence(void) in mock_fence()
99 struct dma_fence *f; in sanitycheck()
115 struct dma_fence *f; in test_signaling()
155 static void simple_callback(struct dma_fence *f, struct dma_fence_cb *cb) in simple_callback()
[all …]
H A Ddma-resv.c66 struct dma_fence __rcu *table[];
71 struct dma_resv *resv, struct dma_fence **fence, in dma_resv_list_entry()
78 *fence = (struct dma_fence *)(tmp & ~DMA_RESV_LIST_MASK); in dma_resv_list_entry()
86 struct dma_fence *fence, in dma_resv_list_set()
91 RCU_INIT_POINTER(list->table[index], (struct dma_fence *)tmp); in dma_resv_list_set()
126 struct dma_fence *fence; in dma_resv_list_free()
210 struct dma_fence *fence; in dma_resv_reserve_fences()
235 struct dma_fence *fence; in dma_resv_reserve_fences()
280 void dma_resv_add_fence(struct dma_resv *obj, struct dma_fence *fence, in dma_resv_add_fence()
284 struct dma_fence *old; in dma_resv_add_fence()
[all …]
H A Ddma-fence-array.c18 static const char *dma_fence_array_get_driver_name(struct dma_fence *fence) in dma_fence_array_get_driver_name()
23 static const char *dma_fence_array_get_timeline_name(struct dma_fence *fence) in dma_fence_array_get_timeline_name()
55 static void dma_fence_array_cb_func(struct dma_fence *f, in dma_fence_array_cb_func()
70 static bool dma_fence_array_enable_signaling(struct dma_fence *fence) in dma_fence_array_enable_signaling()
103 static bool dma_fence_array_signaled(struct dma_fence *fence) in dma_fence_array_signaled()
140 static void dma_fence_array_release(struct dma_fence *fence) in dma_fence_array_release()
152 static void dma_fence_array_set_deadline(struct dma_fence *fence, in dma_fence_array_set_deadline()
192 struct dma_fence **fences, in dma_fence_array_create()
245 bool dma_fence_match_context(struct dma_fence *fence, u64 context) in dma_fence_match_context()
262 struct dma_fence *dma_fence_array_first(struct dma_fence *head) in dma_fence_array_first()
[all …]
H A Dst-dma-fence-unwrap.c17 struct dma_fence base;
21 static const char *mock_name(struct dma_fence *f) in mock_name()
31 static struct dma_fence *mock_fence(void) in mock_fence()
46 static struct dma_fence *mock_array(unsigned int num_fences, ...) in mock_array()
49 struct dma_fence **fences; in mock_array()
80 static struct dma_fence *mock_chain(struct dma_fence *prev, in mock_chain()
81 struct dma_fence *fence) in mock_chain()
98 struct dma_fence *f, *chain, *array; in sanitycheck()
121 struct dma_fence *fence, *f1, *f2, *array; in unwrap_array()
165 struct dma_fence *fence, *f1, *f2, *chain; in unwrap_chain()
[all …]
/openbmc/linux/drivers/gpu/drm/amd/amdgpu/
H A Damdgpu_sync.c40 struct dma_fence *fence;
66 struct dma_fence *f) in amdgpu_sync_same_dev()
87 static void *amdgpu_sync_get_owner(struct dma_fence *f) in amdgpu_sync_get_owner()
114 static void amdgpu_sync_keep_later(struct dma_fence **keep, in amdgpu_sync_keep_later()
115 struct dma_fence *fence) in amdgpu_sync_keep_later()
133 static bool amdgpu_sync_add_later(struct amdgpu_sync *sync, struct dma_fence *f) in amdgpu_sync_add_later()
155 int amdgpu_sync_fence(struct amdgpu_sync *sync, struct dma_fence *f) in amdgpu_sync_fence()
177 void *owner, struct dma_fence *f) in amdgpu_sync_test_fence()
240 struct dma_fence *f; in amdgpu_sync_resv()
249 struct dma_fence *tmp = dma_fence_chain_contained(f); in amdgpu_sync_resv()
[all …]
H A Damdgpu_amdkfd_fence.c85 struct amdgpu_amdkfd_fence *to_amdgpu_amdkfd_fence(struct dma_fence *f) in to_amdgpu_amdkfd_fence()
99 static const char *amdkfd_fence_get_driver_name(struct dma_fence *f) in amdkfd_fence_get_driver_name()
104 static const char *amdkfd_fence_get_timeline_name(struct dma_fence *f) in amdkfd_fence_get_timeline_name()
119 static bool amdkfd_fence_enable_signaling(struct dma_fence *f) in amdkfd_fence_enable_signaling()
147 static void amdkfd_fence_release(struct dma_fence *f) in amdkfd_fence_release()
171 bool amdkfd_fence_check_mm(struct dma_fence *f, struct mm_struct *mm) in amdkfd_fence_check_mm()
H A Damdgpu_fence.c53 struct dma_fence base;
82 static inline struct amdgpu_fence *to_amdgpu_fence(struct dma_fence *f) in to_amdgpu_fence()
141 int amdgpu_fence_emit(struct amdgpu_ring *ring, struct dma_fence **f, struct amdgpu_job *job, in amdgpu_fence_emit()
145 struct dma_fence *fence; in amdgpu_fence_emit()
147 struct dma_fence __rcu **ptr; in amdgpu_fence_emit()
188 struct dma_fence *old; in amdgpu_fence_emit()
296 struct dma_fence *fence, **ptr; in amdgpu_fence_process()
345 struct dma_fence *fence, **ptr; in amdgpu_fence_wait_empty()
418 struct dma_fence *fence; in amdgpu_fence_last_unsignaled_time_us()
449 struct dma_fence *fence; in amdgpu_fence_update_start_timestamp()
[all …]
/openbmc/linux/drivers/gpu/drm/scheduler/
H A Dsched_fence.c52 struct dma_fence *fence) in drm_sched_fence_set_parent()
66 struct dma_fence *parent) in drm_sched_fence_scheduled()
87 static const char *drm_sched_fence_get_driver_name(struct dma_fence *fence) in drm_sched_fence_get_driver_name()
92 static const char *drm_sched_fence_get_timeline_name(struct dma_fence *f) in drm_sched_fence_get_timeline_name()
100 struct dma_fence *f = container_of(rcu, struct dma_fence, rcu); in drm_sched_fence_free_rcu()
130 static void drm_sched_fence_release_scheduled(struct dma_fence *f) in drm_sched_fence_release_scheduled()
145 static void drm_sched_fence_release_finished(struct dma_fence *f) in drm_sched_fence_release_finished()
152 static void drm_sched_fence_set_deadline_finished(struct dma_fence *f, in drm_sched_fence_set_deadline_finished()
156 struct dma_fence *parent; in drm_sched_fence_set_deadline_finished()
196 struct drm_sched_fence *to_drm_sched_fence(struct dma_fence *f) in to_drm_sched_fence()
/openbmc/linux/include/drm/
H A Ddrm_syncobj.h51 struct dma_fence __rcu *fence;
106 static inline struct dma_fence *
109 struct dma_fence *fence; in drm_syncobj_fence_get()
122 struct dma_fence *fence,
125 struct dma_fence *fence);
128 struct dma_fence **fence);
131 struct dma_fence *fence);
H A Dgpu_scheduler.h180 struct dma_fence *dependency;
203 struct dma_fence __rcu *last_scheduled;
272 struct dma_fence scheduled;
284 struct dma_fence finished;
297 struct dma_fence *parent;
313 struct drm_sched_fence *to_drm_sched_fence(struct dma_fence *f);
405 struct dma_fence *(*prepare_job)(struct drm_sched_job *sched_job,
414 struct dma_fence *(*run_job)(struct drm_sched_job *sched_job);
533 struct dma_fence *fence);
558 bool drm_sched_dependency_optimized(struct dma_fence* fence,
[all …]
/openbmc/linux/drivers/gpu/drm/i915/
H A Di915_active.h48 void i915_active_noop(struct dma_fence *fence, struct dma_fence_cb *cb);
74 struct dma_fence *
76 struct dma_fence *fence);
100 static inline struct dma_fence *
103 struct dma_fence *fence; in i915_active_fence_get()
169 struct dma_fence *
170 i915_active_set_exclusive(struct i915_active *ref, struct dma_fence *f);
223 struct dma_fence *fence; in __i915_request_await_exclusive()
/openbmc/linux/drivers/gpu/drm/vgem/
H A Dvgem_fence.c33 struct dma_fence base;
38 static const char *vgem_fence_get_driver_name(struct dma_fence *fence) in vgem_fence_get_driver_name()
43 static const char *vgem_fence_get_timeline_name(struct dma_fence *fence) in vgem_fence_get_timeline_name()
48 static void vgem_fence_release(struct dma_fence *base) in vgem_fence_release()
56 static void vgem_fence_value_str(struct dma_fence *fence, char *str, int size) in vgem_fence_value_str()
61 static void vgem_fence_timeline_value_str(struct dma_fence *fence, char *str, in vgem_fence_timeline_value_str()
84 static struct dma_fence *vgem_fence_create(struct vgem_file *vfile, in vgem_fence_create()
134 struct dma_fence *fence; in vgem_fence_attach_ioctl()
211 struct dma_fence *fence; in vgem_fence_signal_ioctl()
/openbmc/linux/drivers/gpu/drm/msm/
H A Dmsm_fence.c107 struct dma_fence base;
111 static inline struct msm_fence *to_msm_fence(struct dma_fence *fence) in to_msm_fence()
116 static const char *msm_fence_get_driver_name(struct dma_fence *fence) in msm_fence_get_driver_name()
121 static const char *msm_fence_get_timeline_name(struct dma_fence *fence) in msm_fence_get_timeline_name()
127 static bool msm_fence_signaled(struct dma_fence *fence) in msm_fence_signaled()
133 static void msm_fence_set_deadline(struct dma_fence *fence, ktime_t deadline) in msm_fence_set_deadline()
175 struct dma_fence *
188 msm_fence_init(struct dma_fence *fence, struct msm_fence_context *fctx) in msm_fence_init()
/openbmc/linux/drivers/gpu/drm/i915/gem/
H A Di915_gem_wait.c18 i915_gem_object_wait_fence(struct dma_fence *fence, in i915_gem_object_wait_fence()
39 struct dma_fence *fence; in i915_gem_object_boost()
72 struct dma_fence *fence; in i915_gem_object_wait_reservation()
92 static void fence_set_priority(struct dma_fence *fence, in fence_set_priority()
110 static inline bool __dma_fence_is_chain(const struct dma_fence *fence) in __dma_fence_is_chain()
115 void i915_gem_fence_wait_priority(struct dma_fence *fence, in i915_gem_fence_wait_priority()
131 struct dma_fence *iter; in i915_gem_fence_wait_priority()
153 struct dma_fence *fence; in i915_gem_object_wait_priority()
H A Di915_gem_busy.c41 __busy_set_if_active(struct dma_fence *fence, u32 (*flag)(u16 id)) in __busy_set_if_active()
63 struct dma_fence **child = array->fences; in __busy_set_if_active()
67 struct dma_fence *current_fence = *child++; in __busy_set_if_active()
98 busy_check_reader(struct dma_fence *fence) in busy_check_reader()
104 busy_check_writer(struct dma_fence *fence) in busy_check_writer()
119 struct dma_fence *fence; in i915_gem_busy_ioctl()
/openbmc/linux/drivers/gpu/host1x/
H A Dfence.c18 static const char *host1x_syncpt_fence_get_driver_name(struct dma_fence *f) in host1x_syncpt_fence_get_driver_name()
23 static const char *host1x_syncpt_fence_get_timeline_name(struct dma_fence *f) in host1x_syncpt_fence_get_timeline_name()
28 static struct host1x_syncpt_fence *to_host1x_fence(struct dma_fence *f) in to_host1x_fence()
33 static bool host1x_syncpt_fence_enable_signaling(struct dma_fence *f) in host1x_syncpt_fence_enable_signaling()
125 struct dma_fence *host1x_fence_create(struct host1x_syncpt *sp, u32 threshold, in host1x_fence_create()
147 void host1x_fence_cancel(struct dma_fence *f) in host1x_fence_cancel()

123456789