Home
last modified time | relevance | path

Searched refs:sched_engine (Results 1 – 9 of 9) sorted by relevance

/linux/drivers/gpu/drm/i915/
H A Di915_scheduler.c39 static void assert_priolists(struct i915_sched_engine * const sched_engine) in assert_priolists() argument
47 GEM_BUG_ON(rb_first_cached(&sched_engine->queue) != in assert_priolists()
48 rb_first(&sched_engine->queue.rb_root)); in assert_priolists()
51 for (rb = rb_first_cached(&sched_engine->queue); rb; rb = rb_next(rb)) { in assert_priolists()
60 i915_sched_lookup_priolist(struct i915_sched_engine *sched_engine, int prio) in i915_sched_lookup_priolist() argument
66 lockdep_assert_held(&sched_engine->lock); in i915_sched_lookup_priolist()
67 assert_priolists(sched_engine); in i915_sched_lookup_priolist()
69 if (unlikely(sched_engine->no_priolist)) in i915_sched_lookup_priolist()
75 parent = &sched_engine->queue.rb_root.rb_node; in i915_sched_lookup_priolist()
90 p = &sched_engine->default_priolist; in i915_sched_lookup_priolist()
[all …]
H A Di915_scheduler.h43 i915_sched_lookup_priolist(struct i915_sched_engine *sched_engine, int prio);
56 i915_sched_engine_get(struct i915_sched_engine *sched_engine) in i915_sched_engine_get() argument
58 kref_get(&sched_engine->ref); in i915_sched_engine_get()
59 return sched_engine; in i915_sched_engine_get()
63 i915_sched_engine_put(struct i915_sched_engine *sched_engine) in i915_sched_engine_put() argument
65 kref_put(&sched_engine->ref, sched_engine->destroy); in i915_sched_engine_put()
69 i915_sched_engine_is_empty(struct i915_sched_engine *sched_engine) in i915_sched_engine_is_empty() argument
71 return RB_EMPTY_ROOT(&sched_engine->queue.rb_root); in i915_sched_engine_is_empty()
75 i915_sched_engine_reset_on_empty(struct i915_sched_engine *sched_engine) in i915_sched_engine_reset_on_empty() argument
77 if (i915_sched_engine_is_empty(sched_engine)) in i915_sched_engine_reset_on_empty()
[all …]
H A Di915_scheduler_types.h174 bool (*disabled)(struct i915_sched_engine *sched_engine);
/linux/drivers/gpu/drm/i915/gt/
H A Dmock_engine.c258 lockdep_assert_held(&rq->engine->sched_engine->lock); in mock_add_to_engine()
259 list_move_tail(&rq->sched.link, &rq->engine->sched_engine->requests); in mock_add_to_engine()
274 spin_lock_irq(&locked->sched_engine->lock); in mock_remove_from_engine()
276 spin_unlock(&locked->sched_engine->lock); in mock_remove_from_engine()
277 spin_lock(&engine->sched_engine->lock); in mock_remove_from_engine()
281 spin_unlock_irq(&locked->sched_engine->lock); in mock_remove_from_engine()
302 spin_lock_irqsave(&engine->sched_engine->lock, flags); in mock_reset_cancel()
305 list_for_each_entry(rq, &engine->sched_engine->requests, sched.link) in mock_reset_cancel()
318 spin_unlock_irqrestore(&engine->sched_engine->lock, flags); in mock_reset_cancel()
332 i915_sched_engine_put(engine->sched_engine); in mock_engine_release()
[all …]
H A Dintel_engine_cs.c1263 engine->sched_engine = i915_sched_engine_create(ENGINE_PHYSICAL); in engine_setup_common()
1264 if (!engine->sched_engine) { in engine_setup_common()
1268 engine->sched_engine->private_data = engine; in engine_setup_common()
1292 i915_sched_engine_put(engine->sched_engine); in engine_setup_common()
1333 spin_lock_irq(&engine->sched_engine->lock); in measure_breadcrumb_dw()
1337 spin_unlock_irq(&engine->sched_engine->lock); in measure_breadcrumb_dw()
1540 GEM_BUG_ON(!list_empty(&engine->sched_engine->requests)); in intel_engine_cleanup_common()
1542 i915_sched_engine_put(engine->sched_engine); in intel_engine_cleanup_common()
1866 struct tasklet_struct *t = &engine->sched_engine->tasklet; in __intel_engine_flush_submission()
1906 if (!i915_sched_engine_is_empty(engine->sched_engine)) in intel_engine_is_idle()
[all …]
H A Dintel_engine_heartbeat.c165 if (i915_sched_engine_disabled(engine->sched_engine)) { in heartbeat()
189 } else if (engine->sched_engine->schedule && in heartbeat()
204 engine->sched_engine->schedule(rq, &attr); in heartbeat()
H A Dselftest_execlists.c50 tasklet_hi_schedule(&engine->sched_engine->tasklet); in wait_for_submit()
278 engine->sched_engine->schedule(rq[1], &attr); in live_unlite_restore()
558 tasklet_disable(&engine->sched_engine->tasklet); in engine_lock_reset_tasklet()
564 tasklet_enable(&engine->sched_engine->tasklet); in engine_lock_reset_tasklet()
579 tasklet_enable(&engine->sched_engine->tasklet); in engine_unlock_reset_tasklet()
633 engine->sched_engine->tasklet.callback(&engine->sched_engine->tasklet); in live_hold_reset()
922 engine->sched_engine->schedule(rq, &attr); in release_queue()
1205 tasklet_hi_schedule(&engine->sched_engine->tasklet); in live_timeslice_rewind()
1347 engine->sched_engine->schedule(rq, &attr); in live_timeslice_queue()
1893 engine->sched_engine->schedule(rq, &attr); in live_late_preempt()
[all …]
H A Dselftest_reset.c330 struct tasklet_struct *t = &engine->sched_engine->tasklet; in igt_atomic_engine_reset()
H A Dselftest_hangcheck.c929 if (engine->sched_engine->schedule && arg->flags & TEST_PRIORITY) { in active_engine()
934 engine->sched_engine->schedule(rq[idx], &attr); in active_engine()
1880 struct tasklet_struct * const t = &engine->sched_engine->tasklet; in __igt_atomic_reset_engine()