/openbmc/linux/include/linux/ |
H A D | dma-fence.h | 25 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 D | dma-fence-chain.h | 26 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 D | dma-fence-unwrap.h | 11 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 D | dma-fence-array.h | 38 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 D | dma-resv.h | 201 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 D | dma_fence.h | 3 #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 D | dma-fence-chain.c | 12 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 D | dma-fence.c | 28 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 D | dma-fence-unwrap.c | 18 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 D | st-dma-fence.c | 20 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 D | dma-resv.c | 66 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 D | dma-fence-array.c | 18 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 D | st-dma-fence-unwrap.c | 17 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 D | amdgpu_sync.c | 40 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 D | amdgpu_amdkfd_fence.c | 85 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 D | amdgpu_fence.c | 53 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 D | sched_fence.c | 52 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 D | drm_syncobj.h | 51 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 D | gpu_scheduler.h | 180 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 D | i915_active.h | 48 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 D | vgem_fence.c | 33 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 D | msm_fence.c | 107 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 D | i915_gem_wait.c | 18 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 D | i915_gem_busy.c | 41 __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 D | fence.c | 18 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()
|