• Home
  • Raw
  • Download

Lines Matching refs:timeline

54 hwsp_alloc(struct intel_timeline *timeline, unsigned int *cacheline)  in hwsp_alloc()  argument
56 struct intel_gt_timelines *gt = &timeline->gt->timelines; in hwsp_alloc()
75 vma = __hwsp_alloc(timeline->gt); in hwsp_alloc()
82 hwsp->gt = timeline->gt; in hwsp_alloc()
207 int intel_timeline_init(struct intel_timeline *timeline, in intel_timeline_init() argument
213 kref_init(&timeline->kref); in intel_timeline_init()
214 atomic_set(&timeline->pin_count, 0); in intel_timeline_init()
216 timeline->gt = gt; in intel_timeline_init()
218 timeline->has_initial_breadcrumb = !hwsp; in intel_timeline_init()
219 timeline->hwsp_cacheline = NULL; in intel_timeline_init()
225 hwsp = hwsp_alloc(timeline, &cacheline); in intel_timeline_init()
235 timeline->hwsp_cacheline = cl; in intel_timeline_init()
236 timeline->hwsp_offset = cacheline * CACHELINE_BYTES; in intel_timeline_init()
240 timeline->hwsp_offset = I915_GEM_HWS_SEQNO_ADDR; in intel_timeline_init()
247 timeline->hwsp_seqno = in intel_timeline_init()
248 memset(vaddr + timeline->hwsp_offset, 0, CACHELINE_BYTES); in intel_timeline_init()
250 timeline->hwsp_ggtt = i915_vma_get(hwsp); in intel_timeline_init()
251 GEM_BUG_ON(timeline->hwsp_offset >= hwsp->size); in intel_timeline_init()
253 timeline->fence_context = dma_fence_context_alloc(1); in intel_timeline_init()
255 mutex_init(&timeline->mutex); in intel_timeline_init()
257 INIT_ACTIVE_REQUEST(&timeline->last_request, &timeline->mutex); in intel_timeline_init()
258 INIT_LIST_HEAD(&timeline->requests); in intel_timeline_init()
260 i915_syncmap_init(&timeline->sync); in intel_timeline_init()
281 void intel_timeline_fini(struct intel_timeline *timeline) in intel_timeline_fini() argument
283 GEM_BUG_ON(atomic_read(&timeline->pin_count)); in intel_timeline_fini()
284 GEM_BUG_ON(!list_empty(&timeline->requests)); in intel_timeline_fini()
286 if (timeline->hwsp_cacheline) in intel_timeline_fini()
287 cacheline_free(timeline->hwsp_cacheline); in intel_timeline_fini()
289 i915_gem_object_unpin_map(timeline->hwsp_ggtt->obj); in intel_timeline_fini()
291 i915_vma_put(timeline->hwsp_ggtt); in intel_timeline_fini()
297 struct intel_timeline *timeline; in intel_timeline_create() local
300 timeline = kzalloc(sizeof(*timeline), GFP_KERNEL); in intel_timeline_create()
301 if (!timeline) in intel_timeline_create()
304 err = intel_timeline_init(timeline, gt, global_hwsp); in intel_timeline_create()
306 kfree(timeline); in intel_timeline_create()
310 return timeline; in intel_timeline_create()
496 return i915_active_ref(&cl->active, rq->timeline, rq); in cacheline_ref()
504 struct intel_timeline *tl = from->timeline; in intel_timeline_read_hwsp()
507 GEM_BUG_ON(to->timeline == tl); in intel_timeline_read_hwsp()
540 struct intel_timeline *timeline = in __intel_timeline_free() local
541 container_of(kref, typeof(*timeline), kref); in __intel_timeline_free()
543 intel_timeline_fini(timeline); in __intel_timeline_free()
544 kfree(timeline); in __intel_timeline_free()