Lines Matching full:ref

152 void __i915_active_init(struct i915_active *ref,
153 int (*active)(struct i915_active *ref),
154 void (*retire)(struct i915_active *ref),
159 #define i915_active_init(ref, active, retire) do { \ argument
163 __i915_active_init(ref, active, retire, &__mkey, &__wkey); \
167 __i915_active_ref(struct i915_active *ref, u64 idx, struct dma_fence *fence);
168 int i915_active_ref(struct i915_active *ref, u64 idx, struct dma_fence *fence);
171 i915_active_add_request(struct i915_active *ref, struct i915_request *rq) in i915_active_add_request() argument
173 return i915_active_ref(ref, in i915_active_add_request()
179 i915_active_set_exclusive(struct i915_active *ref, struct dma_fence *f);
181 static inline bool i915_active_has_exclusive(struct i915_active *ref) in i915_active_has_exclusive() argument
183 return rcu_access_pointer(ref->excl.fence); in i915_active_has_exclusive()
186 int __i915_active_wait(struct i915_active *ref, int state);
187 static inline int i915_active_wait(struct i915_active *ref) in i915_active_wait() argument
189 return __i915_active_wait(ref, TASK_INTERRUPTIBLE); in i915_active_wait()
193 struct i915_active *ref,
196 struct i915_active *ref,
202 int i915_active_acquire(struct i915_active *ref);
203 int i915_active_acquire_for_context(struct i915_active *ref, u64 idx);
204 bool i915_active_acquire_if_busy(struct i915_active *ref);
206 void i915_active_release(struct i915_active *ref);
208 static inline void __i915_active_acquire(struct i915_active *ref) in __i915_active_acquire() argument
210 GEM_BUG_ON(!atomic_read(&ref->count)); in __i915_active_acquire()
211 atomic_inc(&ref->count); in __i915_active_acquire()
215 i915_active_is_idle(const struct i915_active *ref) in i915_active_is_idle() argument
217 return !atomic_read(&ref->count); in i915_active_is_idle()
220 void i915_active_fini(struct i915_active *ref);
222 int i915_active_acquire_preallocate_barrier(struct i915_active *ref,
224 void i915_active_acquire_barrier(struct i915_active *ref);
227 void i915_active_print(struct i915_active *ref, struct drm_printer *m);
228 void i915_active_unlock_wait(struct i915_active *ref);
231 struct i915_active *i915_active_get(struct i915_active *ref);
232 void i915_active_put(struct i915_active *ref);