| /kernel/linux/linux-5.10/crypto/ |
| D | crypto_engine.c | 3 * Handle async block request by crypto hardware engine. 13 #include <crypto/engine.h> 21 * @engine: the hardware engine 25 static void crypto_finalize_request(struct crypto_engine *engine, in crypto_finalize_request() argument 38 if (!engine->retry_support) { in crypto_finalize_request() 39 spin_lock_irqsave(&engine->queue_lock, flags); in crypto_finalize_request() 40 if (engine->cur_req == req) { in crypto_finalize_request() 42 engine->cur_req = NULL; in crypto_finalize_request() 44 spin_unlock_irqrestore(&engine->queue_lock, flags); in crypto_finalize_request() 47 if (finalize_req || engine->retry_support) { in crypto_finalize_request() [all …]
|
| /kernel/linux/linux-5.10/drivers/gpu/drm/nouveau/nvkm/engine/disp/ |
| D | Kbuild | 2 nvkm-y += nvkm/engine/disp/base.o 3 nvkm-y += nvkm/engine/disp/nv04.o 4 nvkm-y += nvkm/engine/disp/nv50.o 5 nvkm-y += nvkm/engine/disp/g84.o 6 nvkm-y += nvkm/engine/disp/g94.o 7 nvkm-y += nvkm/engine/disp/gt200.o 8 nvkm-y += nvkm/engine/disp/mcp77.o 9 nvkm-y += nvkm/engine/disp/gt215.o 10 nvkm-y += nvkm/engine/disp/mcp89.o 11 nvkm-y += nvkm/engine/disp/gf119.o [all …]
|
| /kernel/linux/linux-6.6/crypto/ |
| D | crypto_engine.c | 3 * Handle async block request by crypto hardware engine. 12 #include <crypto/internal/engine.h> 36 * @engine: the hardware engine 40 static void crypto_finalize_request(struct crypto_engine *engine, in crypto_finalize_request() argument 50 if (!engine->retry_support) { in crypto_finalize_request() 51 spin_lock_irqsave(&engine->queue_lock, flags); in crypto_finalize_request() 52 if (engine->cur_req == req) { in crypto_finalize_request() 53 engine->cur_req = NULL; in crypto_finalize_request() 55 spin_unlock_irqrestore(&engine->queue_lock, flags); in crypto_finalize_request() 61 kthread_queue_work(engine->kworker, &engine->pump_requests); in crypto_finalize_request() [all …]
|
| /kernel/linux/linux-6.6/drivers/gpu/drm/nouveau/nvkm/engine/gr/ |
| D | Kbuild | 2 nvkm-y += nvkm/engine/gr/base.o 3 nvkm-y += nvkm/engine/gr/nv04.o 4 nvkm-y += nvkm/engine/gr/nv10.o 5 nvkm-y += nvkm/engine/gr/nv15.o 6 nvkm-y += nvkm/engine/gr/nv17.o 7 nvkm-y += nvkm/engine/gr/nv20.o 8 nvkm-y += nvkm/engine/gr/nv25.o 9 nvkm-y += nvkm/engine/gr/nv2a.o 10 nvkm-y += nvkm/engine/gr/nv30.o 11 nvkm-y += nvkm/engine/gr/nv34.o [all …]
|
| /kernel/linux/linux-6.6/drivers/gpu/drm/i915/gt/ |
| D | intel_engine_heartbeat.c | 17 * While the engine is active, we send a periodic pulse along the engine 19 * is stuck, and we fail to preempt it, we declare the engine hung and 23 static bool next_heartbeat(struct intel_engine_cs *engine) in next_heartbeat() argument 28 delay = READ_ONCE(engine->props.heartbeat_interval_ms); in next_heartbeat() 30 rq = engine->heartbeat.systole; in next_heartbeat() 42 delay == engine->defaults.heartbeat_interval_ms) { in next_heartbeat() 50 longer = READ_ONCE(engine->props.preempt_timeout_ms) * 2; in next_heartbeat() 51 longer = intel_clamp_heartbeat_interval_ms(engine, longer); in next_heartbeat() 62 mod_delayed_work(system_highpri_wq, &engine->heartbeat.work, delay + 1); in next_heartbeat() 79 static void idle_pulse(struct intel_engine_cs *engine, struct i915_request *rq) in idle_pulse() argument [all …]
|
| D | intel_ring_submission.c | 35 static void set_hwstam(struct intel_engine_cs *engine, u32 mask) in set_hwstam() argument 41 if (engine->class == RENDER_CLASS) { in set_hwstam() 42 if (GRAPHICS_VER(engine->i915) >= 6) in set_hwstam() 48 intel_engine_set_hwsp_writemask(engine, mask); in set_hwstam() 51 static void set_hws_pga(struct intel_engine_cs *engine, phys_addr_t phys) in set_hws_pga() argument 56 if (GRAPHICS_VER(engine->i915) >= 4) in set_hws_pga() 59 intel_uncore_write(engine->uncore, HWS_PGA, addr); in set_hws_pga() 62 static struct page *status_page(struct intel_engine_cs *engine) in status_page() argument 64 struct drm_i915_gem_object *obj = engine->status_page.vma->obj; in status_page() 70 static void ring_setup_phys_status_page(struct intel_engine_cs *engine) in ring_setup_phys_status_page() argument [all …]
|
| D | mock_engine.c | 60 static struct intel_ring *mock_ring(struct intel_engine_cs *engine) in mock_ring() argument 75 ring->vma = create_ring_vma(engine->gt->ggtt, PAGE_SIZE); in mock_ring() 93 static struct i915_request *first_request(struct mock_engine *engine) in first_request() argument 95 return list_first_entry_or_null(&engine->hw_queue, in first_request() 106 intel_engine_signal_breadcrumbs(request->engine); in advance() 111 struct mock_engine *engine = from_timer(engine, t, hw_delay); in hw_delay_complete() local 115 spin_lock_irqsave(&engine->hw_lock, flags); in hw_delay_complete() 118 request = first_request(engine); in hw_delay_complete() 126 while ((request = first_request(engine))) { in hw_delay_complete() 128 mod_timer(&engine->hw_delay, in hw_delay_complete() [all …]
|
| D | selftest_engine_heartbeat.c | 14 static void reset_heartbeat(struct intel_engine_cs *engine) in reset_heartbeat() argument 16 intel_engine_set_heartbeat(engine, in reset_heartbeat() 17 engine->defaults.heartbeat_interval_ms); in reset_heartbeat() 37 static int engine_sync_barrier(struct intel_engine_cs *engine) in engine_sync_barrier() argument 39 return timeline_sync(engine->kernel_context->timeline); in engine_sync_barrier() 90 static int __live_idle_pulse(struct intel_engine_cs *engine, in __live_idle_pulse() argument 96 GEM_BUG_ON(!intel_engine_pm_is_awake(engine)); in __live_idle_pulse() 106 err = i915_active_acquire_preallocate_barrier(&p->active, engine); in __live_idle_pulse() 116 GEM_BUG_ON(llist_empty(&engine->barrier_tasks)); in __live_idle_pulse() 118 err = fn(engine); in __live_idle_pulse() [all …]
|
| D | intel_engine_cs.c | 260 * intel_engine_context_size() - return the size of the context for an engine 262 * @class: engine class 264 * Each engine class may require a different amount of space for a context 267 * Return: size (in bytes) of an engine class specific context image 359 static void __sprint_engine_name(struct intel_engine_cs *engine) in __sprint_engine_name() argument 362 * Before we know what the uABI name for this engine will be, in __sprint_engine_name() 363 * we still would like to keep track of this engine in the debug logs. in __sprint_engine_name() 366 GEM_WARN_ON(snprintf(engine->name, sizeof(engine->name), "%s'%u", in __sprint_engine_name() 367 intel_engine_class_repr(engine->class), in __sprint_engine_name() 368 engine->instance) >= sizeof(engine->name)); in __sprint_engine_name() [all …]
|
| D | intel_engine_pm.h | 16 intel_engine_pm_is_awake(const struct intel_engine_cs *engine) in intel_engine_pm_is_awake() argument 18 return intel_wakeref_is_active(&engine->wakeref); in intel_engine_pm_is_awake() 21 static inline void __intel_engine_pm_get(struct intel_engine_cs *engine) in __intel_engine_pm_get() argument 23 __intel_wakeref_get(&engine->wakeref); in __intel_engine_pm_get() 26 static inline void intel_engine_pm_get(struct intel_engine_cs *engine) in intel_engine_pm_get() argument 28 intel_wakeref_get(&engine->wakeref); in intel_engine_pm_get() 31 static inline bool intel_engine_pm_get_if_awake(struct intel_engine_cs *engine) in intel_engine_pm_get_if_awake() argument 33 return intel_wakeref_get_if_active(&engine->wakeref); in intel_engine_pm_get_if_awake() 36 static inline void intel_engine_pm_might_get(struct intel_engine_cs *engine) in intel_engine_pm_might_get() argument 38 if (!intel_engine_is_virtual(engine)) { in intel_engine_pm_might_get() [all …]
|
| D | intel_engine_user.c | 39 void intel_engine_add_user(struct intel_engine_cs *engine) in intel_engine_add_user() argument 41 llist_add((struct llist_node *)&engine->uabi_node, in intel_engine_add_user() 42 (struct llist_head *)&engine->i915->uabi_engines); in intel_engine_add_user() 88 struct intel_engine_cs *engine = in sort_engines() local 89 container_of((struct rb_node *)pos, typeof(*engine), in sort_engines() 91 list_add((struct list_head *)&engine->uabi_node, engines); in sort_engines() 99 u8 engine; in set_scheduler_caps() member 108 struct intel_engine_cs *engine; in set_scheduler_caps() local 113 for_each_uabi_engine(engine, i915) { /* all engines must agree! */ in set_scheduler_caps() 116 if (engine->sched_engine->schedule) in set_scheduler_caps() [all …]
|
| D | intel_engine.h | 47 * ENGINE_READ(engine, REG_FOO); 52 * ENGINE_READ_IDX(engine, REG_BAR, i) 133 intel_read_status_page(const struct intel_engine_cs *engine, int reg) in intel_read_status_page() argument 136 return READ_ONCE(engine->status_page.addr[reg]); in intel_read_status_page() 140 intel_write_status_page(struct intel_engine_cs *engine, int reg, u32 value) in intel_write_status_page() argument 147 drm_clflush_virt_range(&engine->status_page.addr[reg], sizeof(value)); in intel_write_status_page() 148 WRITE_ONCE(engine->status_page.addr[reg], value); in intel_write_status_page() 149 drm_clflush_virt_range(&engine->status_page.addr[reg], sizeof(value)); in intel_write_status_page() 185 void intel_engine_stop(struct intel_engine_cs *engine); 186 void intel_engine_cleanup(struct intel_engine_cs *engine); [all …]
|
| /kernel/linux/linux-5.10/drivers/gpu/drm/nouveau/nvkm/engine/gr/ |
| D | Kbuild | 2 nvkm-y += nvkm/engine/gr/base.o 3 nvkm-y += nvkm/engine/gr/nv04.o 4 nvkm-y += nvkm/engine/gr/nv10.o 5 nvkm-y += nvkm/engine/gr/nv15.o 6 nvkm-y += nvkm/engine/gr/nv17.o 7 nvkm-y += nvkm/engine/gr/nv20.o 8 nvkm-y += nvkm/engine/gr/nv25.o 9 nvkm-y += nvkm/engine/gr/nv2a.o 10 nvkm-y += nvkm/engine/gr/nv30.o 11 nvkm-y += nvkm/engine/gr/nv34.o [all …]
|
| /kernel/linux/linux-5.10/drivers/gpu/drm/i915/gt/ |
| D | intel_ring_submission.c | 48 static void set_hwstam(struct intel_engine_cs *engine, u32 mask) in set_hwstam() argument 54 if (engine->class == RENDER_CLASS) { in set_hwstam() 55 if (INTEL_GEN(engine->i915) >= 6) in set_hwstam() 61 intel_engine_set_hwsp_writemask(engine, mask); in set_hwstam() 64 static void set_hws_pga(struct intel_engine_cs *engine, phys_addr_t phys) in set_hws_pga() argument 69 if (INTEL_GEN(engine->i915) >= 4) in set_hws_pga() 72 intel_uncore_write(engine->uncore, HWS_PGA, addr); in set_hws_pga() 75 static struct page *status_page(struct intel_engine_cs *engine) in status_page() argument 77 struct drm_i915_gem_object *obj = engine->status_page.vma->obj; in status_page() 83 static void ring_setup_phys_status_page(struct intel_engine_cs *engine) in ring_setup_phys_status_page() argument [all …]
|
| D | intel_engine_heartbeat.c | 18 * While the engine is active, we send a periodic pulse along the engine 20 * is stuck, and we fail to preempt it, we declare the engine hung and 24 static bool next_heartbeat(struct intel_engine_cs *engine) in next_heartbeat() argument 28 delay = READ_ONCE(engine->props.heartbeat_interval_ms); in next_heartbeat() 35 mod_delayed_work(system_highpri_wq, &engine->heartbeat.work, delay); in next_heartbeat() 40 static void idle_pulse(struct intel_engine_cs *engine, struct i915_request *rq) in idle_pulse() argument 42 engine->wakeref_serial = READ_ONCE(engine->serial) + 1; in idle_pulse() 47 struct intel_engine_cs *engine) in show_heartbeat() argument 51 intel_engine_dump(engine, &p, in show_heartbeat() 53 engine->name, in show_heartbeat() [all …]
|
| D | intel_engine_cs.c | 144 * intel_engine_context_size() - return the size of the context for an engine 146 * @class: engine class 148 * Each engine class may require a different amount of space for a context 151 * Return: size (in bytes) of an engine class specific context image 242 static void __sprint_engine_name(struct intel_engine_cs *engine) in __sprint_engine_name() argument 245 * Before we know what the uABI name for this engine will be, in __sprint_engine_name() 246 * we still would like to keep track of this engine in the debug logs. in __sprint_engine_name() 249 GEM_WARN_ON(snprintf(engine->name, sizeof(engine->name), "%s'%u", in __sprint_engine_name() 250 intel_engine_class_repr(engine->class), in __sprint_engine_name() 251 engine->instance) >= sizeof(engine->name)); in __sprint_engine_name() [all …]
|
| D | mock_engine.c | 46 static struct intel_ring *mock_ring(struct intel_engine_cs *engine) in mock_ring() argument 84 static struct i915_request *first_request(struct mock_engine *engine) in first_request() argument 86 return list_first_entry_or_null(&engine->hw_queue, in first_request() 97 intel_engine_signal_breadcrumbs(request->engine); in advance() 102 struct mock_engine *engine = from_timer(engine, t, hw_delay); in hw_delay_complete() local 106 spin_lock_irqsave(&engine->hw_lock, flags); in hw_delay_complete() 109 request = first_request(engine); in hw_delay_complete() 117 while ((request = first_request(engine))) { in hw_delay_complete() 119 mod_timer(&engine->hw_delay, in hw_delay_complete() 127 spin_unlock_irqrestore(&engine->hw_lock, flags); in hw_delay_complete() [all …]
|
| D | selftest_engine_heartbeat.c | 32 static int engine_sync_barrier(struct intel_engine_cs *engine) in engine_sync_barrier() argument 34 return timeline_sync(engine->kernel_context->timeline); in engine_sync_barrier() 85 static int __live_idle_pulse(struct intel_engine_cs *engine, in __live_idle_pulse() argument 91 GEM_BUG_ON(!intel_engine_pm_is_awake(engine)); in __live_idle_pulse() 101 err = i915_active_acquire_preallocate_barrier(&p->active, engine); in __live_idle_pulse() 111 GEM_BUG_ON(llist_empty(&engine->barrier_tasks)); in __live_idle_pulse() 113 err = fn(engine); in __live_idle_pulse() 117 GEM_BUG_ON(!llist_empty(&engine->barrier_tasks)); in __live_idle_pulse() 119 if (engine_sync_barrier(engine)) { in __live_idle_pulse() 122 pr_err("%s: no heartbeat pulse?\n", engine->name); in __live_idle_pulse() [all …]
|
| D | intel_engine_user.c | 39 void intel_engine_add_user(struct intel_engine_cs *engine) in intel_engine_add_user() argument 41 llist_add((struct llist_node *)&engine->uabi_node, in intel_engine_add_user() 42 (struct llist_head *)&engine->i915->uabi_engines); in intel_engine_add_user() 84 struct intel_engine_cs *engine = in sort_engines() local 85 container_of((struct rb_node *)pos, typeof(*engine), in sort_engines() 87 list_add((struct list_head *)&engine->uabi_node, engines); in sort_engines() 95 u8 engine; in set_scheduler_caps() member 104 struct intel_engine_cs *engine; in set_scheduler_caps() local 109 for_each_uabi_engine(engine, i915) { /* all engines must agree! */ in set_scheduler_caps() 112 if (engine->schedule) in set_scheduler_caps() [all …]
|
| /kernel/linux/linux-5.10/drivers/gpu/drm/nouveau/nvkm/core/ |
| D | engine.c | 24 #include <core/engine.h> 31 nvkm_engine_chsw_load(struct nvkm_engine *engine) in nvkm_engine_chsw_load() argument 33 if (engine->func->chsw_load) in nvkm_engine_chsw_load() 34 return engine->func->chsw_load(engine); in nvkm_engine_chsw_load() 41 struct nvkm_engine *engine = *pengine; in nvkm_engine_unref() local 42 if (engine) { in nvkm_engine_unref() 43 mutex_lock(&engine->subdev.mutex); in nvkm_engine_unref() 44 if (--engine->usecount == 0) in nvkm_engine_unref() 45 nvkm_subdev_fini(&engine->subdev, false); in nvkm_engine_unref() 46 mutex_unlock(&engine->subdev.mutex); in nvkm_engine_unref() [all …]
|
| /kernel/linux/linux-6.6/drivers/gpu/drm/sun4i/ |
| D | sunxi_engine.h | 26 * This callback allows to prepare our engine for an atomic 33 void (*atomic_begin)(struct sunxi_engine *engine, 50 int (*atomic_check)(struct sunxi_engine *engine, 62 void (*commit)(struct sunxi_engine *engine); 68 * the layers supported by that engine. 78 struct sunxi_engine *engine); 84 * engine. This is useful only for the composite output. 88 void (*apply_color_correction)(struct sunxi_engine *engine); 94 * engine. This is useful only for the composite output. 98 void (*disable_color_correction)(struct sunxi_engine *engine); [all …]
|
| /kernel/linux/linux-6.6/drivers/gpu/drm/nouveau/nvkm/core/ |
| D | engine.c | 24 #include <core/engine.h> 31 nvkm_engine_chsw_load(struct nvkm_engine *engine) in nvkm_engine_chsw_load() argument 33 if (engine->func->chsw_load) in nvkm_engine_chsw_load() 34 return engine->func->chsw_load(engine); in nvkm_engine_chsw_load() 39 nvkm_engine_reset(struct nvkm_engine *engine) in nvkm_engine_reset() argument 41 if (engine->func->reset) in nvkm_engine_reset() 42 return engine->func->reset(engine); in nvkm_engine_reset() 44 nvkm_subdev_fini(&engine->subdev, false); in nvkm_engine_reset() 45 return nvkm_subdev_init(&engine->subdev); in nvkm_engine_reset() 51 struct nvkm_engine *engine = *pengine; in nvkm_engine_unref() local [all …]
|
| /kernel/linux/linux-5.10/drivers/gpu/drm/sun4i/ |
| D | sunxi_engine.h | 25 * This callback allows to prepare our engine for an atomic 32 void (*atomic_begin)(struct sunxi_engine *engine, 49 int (*atomic_check)(struct sunxi_engine *engine, 61 void (*commit)(struct sunxi_engine *engine); 67 * the layers supported by that engine. 77 struct sunxi_engine *engine); 83 * engine. This is useful only for the composite output. 87 void (*apply_color_correction)(struct sunxi_engine *engine); 93 * engine. This is useful only for the composite output. 97 void (*disable_color_correction)(struct sunxi_engine *engine); [all …]
|
| /kernel/linux/linux-5.10/drivers/gpu/drm/nouveau/nvkm/engine/fifo/ |
| D | Kbuild | 2 nvkm-y += nvkm/engine/fifo/base.o 3 nvkm-y += nvkm/engine/fifo/nv04.o 4 nvkm-y += nvkm/engine/fifo/nv10.o 5 nvkm-y += nvkm/engine/fifo/nv17.o 6 nvkm-y += nvkm/engine/fifo/nv40.o 7 nvkm-y += nvkm/engine/fifo/nv50.o 8 nvkm-y += nvkm/engine/fifo/g84.o 9 nvkm-y += nvkm/engine/fifo/gf100.o 10 nvkm-y += nvkm/engine/fifo/gk104.o 11 nvkm-y += nvkm/engine/fifo/gk110.o [all …]
|
| /kernel/linux/linux-6.6/drivers/gpu/drm/nouveau/nvkm/engine/disp/ |
| D | Kbuild | 2 nvkm-y += nvkm/engine/disp/base.o 3 nvkm-y += nvkm/engine/disp/chan.o 4 nvkm-y += nvkm/engine/disp/conn.o 5 nvkm-y += nvkm/engine/disp/dp.o 6 nvkm-y += nvkm/engine/disp/hdmi.o 7 nvkm-y += nvkm/engine/disp/head.o 8 nvkm-y += nvkm/engine/disp/ior.o 9 nvkm-y += nvkm/engine/disp/outp.o 10 nvkm-y += nvkm/engine/disp/vga.o 12 nvkm-y += nvkm/engine/disp/nv04.o [all …]
|