/linux/drivers/gpu/drm/etnaviv/ |
A D | etnaviv_gem_submit.c | 35 size_t sz = size_vstruct(nr_bos, sizeof(submit->bos[0]), sizeof(*submit)); in submit_create() 38 if (!submit) in submit_create() 43 if (!submit->pmrs) { in submit_create() 44 kfree(submit); in submit_create() 49 submit->gpu = gpu; in submit_create() 52 return submit; in submit_create() 105 submit->nr_bos = i; in submit_lookup_objects() 411 idr_remove(&submit->gpu->fence_idr, submit->out_fence_id); in submit_cleanup() 416 kfree(submit); in submit_cleanup() 524 if (!submit) { in etnaviv_ioctl_gem_submit() [all …]
|
A D | etnaviv_sched.c | 28 if (unlikely(submit->in_fence)) { in etnaviv_sched_dependency() 29 fence = submit->in_fence; in etnaviv_sched_dependency() 30 submit->in_fence = NULL; in etnaviv_sched_dependency() 119 etnaviv_core_dump(submit); in etnaviv_sched_timedout_job() 139 etnaviv_submit_put(submit); in etnaviv_sched_free_job() 162 submit->ctx); in etnaviv_sched_push_job() 168 submit->out_fence = dma_fence_get(&submit->sched_job.s_fence->finished); in etnaviv_sched_push_job() 169 submit->out_fence_id = idr_alloc_cyclic(&submit->gpu->fence_idr, in etnaviv_sched_push_job() 170 submit->out_fence, 0, in etnaviv_sched_push_job() 172 if (submit->out_fence_id < 0) { in etnaviv_sched_push_job() [all …]
|
A D | etnaviv_dump.c | 113 void etnaviv_core_dump(struct etnaviv_gem_submit *submit) in etnaviv_core_dump() argument 115 struct etnaviv_gpu *gpu = submit->gpu; in etnaviv_core_dump() 137 mmu_size + gpu->buffer.size + submit->cmdbuf.size; in etnaviv_core_dump() 140 for (i = 0; i < submit->nr_bos; i++) { in etnaviv_core_dump() 141 obj = submit->bos[i].obj; in etnaviv_core_dump() 179 submit->cmdbuf.vaddr, submit->cmdbuf.size, in etnaviv_core_dump() 180 etnaviv_cmdbuf_get_va(&submit->cmdbuf, in etnaviv_core_dump() 196 for (i = 0; i < submit->nr_bos; i++) { in etnaviv_core_dump() 201 obj = submit->bos[i].obj; in etnaviv_core_dump() 202 vram = submit->bos[i].mapping; in etnaviv_core_dump()
|
A D | etnaviv_gpu.c | 1280 const struct etnaviv_gem_submit *submit = event->submit; in sync_point_perfmon_sample() local 1312 const struct etnaviv_gem_submit *submit = event->submit; in sync_point_perfmon_sample_post() local 1360 if (submit->nr_pmrs) in etnaviv_gpu_submit() 1383 if (submit->prev_mmu_context) in etnaviv_gpu_submit() 1387 if (submit->nr_pmrs) { in etnaviv_gpu_submit() 1389 kref_get(&submit->refcount); in etnaviv_gpu_submit() 1390 gpu->event[event[1]].submit = submit; in etnaviv_gpu_submit() 1395 submit->cmdbuf.user_size = submit->cmdbuf.size - 8; in etnaviv_gpu_submit() 1396 etnaviv_buffer_queue(gpu, submit->exec_state, submit->mmu_context, in etnaviv_gpu_submit() 1399 if (submit->nr_pmrs) { in etnaviv_gpu_submit() [all …]
|
/linux/drivers/gpu/drm/msm/ |
A D | msm_gem_submit.c | 46 if (!submit) in submit_create() 51 kfree(submit); in submit_create() 56 submit->dev = dev; in submit_create() 59 submit->cmd = (void *)&submit->bos[nr_bos]; in submit_create() 66 return submit; in submit_create() 77 idr_remove(&submit->queue->fence_idr, submit->fence_id); in __msm_gem_submit_destroy() 90 kfree(submit); in __msm_gem_submit_destroy() 849 ret = submit_bo(submit, submit->cmd[i].idx, in msm_ioctl_gem_submit() 855 ((submit->cmd[i].size + submit->cmd[i].offset) > in msm_ioctl_gem_submit() 868 submit->cmd[i].nr_relocs, submit->cmd[i].relocs); in msm_ioctl_gem_submit() [all …]
|
A D | msm_gpu.c | 284 if (submit) { in msm_gpu_crashstate_capture() 293 if (!should_dump(submit, submit->cmd[i].idx)) in msm_gpu_crashstate_capture() 302 submit->bos[i].iova, submit->bos[i].flags); in msm_gpu_crashstate_capture() 309 if (!should_dump(submit, submit->cmd[i].idx)) { in msm_gpu_crashstate_capture() 311 submit->bos[idx].iova, submit->bos[idx].flags); in msm_gpu_crashstate_capture() 369 if (submit) { in recover_worker() 440 gpu->funcs->submit(gpu, submit); in recover_worker() 461 if (submit && submit->fault_dumped) in fault_worker() 464 if (submit) { in fault_worker() 700 if (submit && dma_fence_is_signaled(submit->hw_fence)) { in retire_submits() [all …]
|
A D | msm_rd.c | 86 struct msm_gem_submit *submit; member 310 iova = submit->bos[idx].iova; in snapshot_buf() 347 struct drm_device *dev = submit->dev; in msm_rd_dump_submit() 375 pid_nr(submit->pid), submit->seqno); in msm_rd_dump_submit() 378 pid_nr(submit->pid), submit->seqno); in msm_rd_dump_submit() 384 for (i = 0; i < submit->nr_bos; i++) in msm_rd_dump_submit() 385 snapshot_buf(rd, submit, i, 0, 0, should_dump(submit, i)); in msm_rd_dump_submit() 391 if (!should_dump(submit, i)) { in msm_rd_dump_submit() 392 snapshot_buf(rd, submit, submit->cmd[i].idx, in msm_rd_dump_submit() 398 uint64_t iova = submit->cmd[i].iova; in msm_rd_dump_submit() [all …]
|
A D | msm_gpu_trace.h | 34 TP_PROTO(struct msm_gem_submit *submit, u64 ticks), 35 TP_ARGS(submit, ticks), 44 __entry->pid = pid_nr(submit->pid); 45 __entry->id = submit->ident; 46 __entry->ringid = submit->ring->id; 47 __entry->seqno = submit->seqno; 59 TP_ARGS(submit, elapsed, clock, start, end), 71 __entry->pid = pid_nr(submit->pid); 72 __entry->id = submit->ident; 73 __entry->ringid = submit->ring->id; [all …]
|
A D | msm_ringbuffer.c | 16 struct msm_gem_submit *submit = to_msm_submit(job); in msm_job_run() local 17 struct msm_gpu *gpu = submit->gpu; in msm_job_run() 19 submit->hw_fence = msm_fence_alloc(submit->ring->fctx); in msm_job_run() 26 msm_gpu_submit(gpu, submit); in msm_job_run() 32 return dma_fence_get(submit->hw_fence); in msm_job_run() 37 struct msm_gem_submit *submit = to_msm_submit(job); in msm_job_free() local 40 msm_gem_submit_put(submit); in msm_job_free()
|
/linux/crypto/async_tx/ |
A D | async_raid6_recov.c | 39 if (submit->flags & ASYNC_TX_FENCE) in async_sum_product() 58 async_tx_submit(chan, tx, submit); in async_sum_product() 89 struct async_submit_ctl *submit) in async_mult() argument 155 struct async_submit_ctl *submit) in __2data_recov_4() argument 165 void *cb_param = submit->cb_param; in __2data_recov_4() 205 struct async_submit_ctl *submit) in __2data_recov_5() argument 423 async_tx_sync_epilog(submit); in async_raid6_2data_recov() 445 blocks, offs, submit); in async_raid6_2data_recov() 453 blocks, offs, submit); in async_raid6_2data_recov() 456 blocks, offs, submit); in async_raid6_2data_recov() [all …]
|
A D | async_xor.c | 40 submit->flags = flags_orig; in do_async_xor() 48 submit->cb_fn = NULL; in do_async_xor() 49 submit->cb_param = NULL; in do_async_xor() 54 if (submit->cb_fn) in do_async_xor() 84 submit->depend_tx = tx; in do_async_xor() 110 if (submit->scribble) in do_sync_xor_offs() 111 srcs = submit->scribble; in do_sync_xor_offs() 244 src_cnt, len, submit); in async_xor_offs() 277 src_cnt, len, submit); in async_xor() 337 if (submit->cb_fn) in async_xor_val_offs() [all …]
|
A D | async_pq.c | 52 submit->flags = flags_orig; in do_async_gen_syndrome() 61 submit->cb_fn = NULL; in do_async_gen_syndrome() 62 submit->cb_param = NULL; in do_async_gen_syndrome() 64 submit->cb_fn = cb_fn_orig; in do_async_gen_syndrome() 91 submit->depend_tx = tx; in do_async_gen_syndrome() 114 if (submit->scribble) in do_sync_gen_syndrome() 115 srcs = submit->scribble; in do_sync_gen_syndrome() 139 async_tx_sync_epilog(submit); in do_sync_gen_syndrome() 417 len, submit); in async_syndrome_val() 430 submit->cb_fn = cb_fn_orig; in async_syndrome_val() [all …]
|
A D | raid6test.c | 60 struct async_submit_ctl submit; in raid6_dual_recov() local 71 init_async_submit(&submit, 0, NULL, NULL, NULL, addr_conv); in raid6_dual_recov() 73 disks, bytes, &submit); in raid6_dual_recov() 91 init_async_submit(&submit, ASYNC_TX_XOR_ZERO_DST, NULL, in raid6_dual_recov() 93 tx = async_xor(dest, blocks, 0, count, bytes, &submit); in raid6_dual_recov() 95 init_async_submit(&submit, 0, tx, NULL, NULL, addr_conv); in raid6_dual_recov() 97 disks, bytes, &submit); in raid6_dual_recov() 104 faila, ptrs, offs, &submit); in raid6_dual_recov() 109 faila, failb, ptrs, offs, &submit); in raid6_dual_recov() 115 disks, bytes, &result, spare, 0, &submit); in raid6_dual_recov() [all …]
|
A D | async_tx.c | 43 __async_tx_find_channel(struct async_submit_ctl *submit, in __async_tx_find_channel() argument 46 struct dma_async_tx_descriptor *depend_tx = submit->depend_tx; in __async_tx_find_channel() 144 struct async_submit_ctl *submit) in async_tx_submit() argument 146 struct dma_async_tx_descriptor *depend_tx = submit->depend_tx; in async_tx_submit() 148 tx->callback = submit->cb_fn; in async_tx_submit() 149 tx->callback_param = submit->cb_param; in async_tx_submit() 204 if (submit->flags & ASYNC_TX_ACK) in async_tx_submit() 221 async_trigger_callback(struct async_submit_ctl *submit) in async_trigger_callback() argument 245 async_tx_submit(chan, tx, submit); in async_trigger_callback() 250 async_tx_quiesce(&submit->depend_tx); in async_trigger_callback() [all …]
|
A D | async_memcpy.c | 34 struct async_submit_ctl *submit) in async_memcpy() argument 36 struct dma_chan *chan = async_tx_find_channel(submit, DMA_MEMCPY, in async_memcpy() 48 if (submit->cb_fn) in async_memcpy() 50 if (submit->flags & ASYNC_TX_FENCE) in async_memcpy() 70 async_tx_submit(chan, tx, submit); in async_memcpy() 76 async_tx_quiesce(&submit->depend_tx); in async_memcpy() 86 async_tx_sync_epilog(submit); in async_memcpy()
|
/linux/include/linux/ |
A D | async_tx.h | 118 async_tx_find_channel(struct async_submit_ctl *submit, in async_tx_find_channel() argument 133 async_tx_sync_epilog(struct async_submit_ctl *submit) in async_tx_sync_epilog() argument 135 if (submit->cb_fn) in async_tx_sync_epilog() 136 submit->cb_fn(submit->cb_param); in async_tx_sync_epilog() 159 struct async_submit_ctl *submit); 173 struct async_submit_ctl *submit); 179 struct async_submit_ctl *submit); 184 struct async_submit_ctl *submit); 190 size_t len, struct async_submit_ctl *submit); 200 struct async_submit_ctl *submit); [all …]
|
/linux/drivers/dma/ti/ |
A D | cppi41.c | 119 u16 submit; member 157 [ 0] = { .submit = 32, .complete = 93}, 158 [ 1] = { .submit = 34, .complete = 94}, 159 [ 2] = { .submit = 36, .complete = 95}, 160 [ 3] = { .submit = 38, .complete = 96}, 161 [ 4] = { .submit = 40, .complete = 97}, 162 [ 5] = { .submit = 42, .complete = 98}, 235 [0] = { .submit = 1, .complete = 26}, 236 [1] = { .submit = 3, .complete = 26}, 237 [2] = { .submit = 5, .complete = 26}, [all …]
|
/linux/drivers/gpu/drm/lima/ |
A D | lima_gem.c | 282 if (!submit->in_sync[i]) in lima_gem_add_deps() 308 struct lima_bo **bos = submit->lbos; in lima_gem_submit() 310 if (submit->out_sync) { in lima_gem_submit() 341 submit->nr_bos, &ctx); in lima_gem_submit() 346 submit->task, submit->ctx->context + submit->pipe, in lima_gem_submit() 347 bos, submit->nr_bos, vm); in lima_gem_submit() 357 submit->task, bos[i], in lima_gem_submit() 374 submit->nr_bos, &ctx); in lima_gem_submit() 376 for (i = 0; i < submit->nr_bos; i++) in lima_gem_submit() 389 lima_sched_task_fini(submit->task); in lima_gem_submit() [all …]
|
A D | lima_drv.c | 110 struct lima_submit submit = {0}; in lima_ioctl_gem_submit() local 124 bos = kvcalloc(args->nr_bos, sizeof(*submit.bos) + sizeof(*submit.lbos), GFP_KERNEL); in lima_ioctl_gem_submit() 156 submit.pipe = args->pipe; in lima_ioctl_gem_submit() 157 submit.bos = bos; in lima_ioctl_gem_submit() 158 submit.lbos = (void *)bos + size; in lima_ioctl_gem_submit() 159 submit.nr_bos = args->nr_bos; in lima_ioctl_gem_submit() 160 submit.task = task; in lima_ioctl_gem_submit() 161 submit.ctx = ctx; in lima_ioctl_gem_submit() 162 submit.flags = args->flags; in lima_ioctl_gem_submit() 163 submit.in_sync[0] = args->in_sync[0]; in lima_ioctl_gem_submit() [all …]
|
/linux/fs/iomap/ |
A D | direct-io.c | 43 } submit; member 59 dio->submit.poll_bio = bio; in iomap_dio_submit_bio() 156 WRITE_ONCE(dio->submit.waiter, NULL); in iomap_dio_bio_end_io() 276 iov_iter_truncate(dio->submit.iter, length); in iomap_dio_bio_iter() 278 if (!iov_iter_count(dio->submit.iter)) in iomap_dio_bio_iter() 391 struct iov_iter *iter = dio->submit.iter; in iomap_dio_inline_iter() 507 dio->submit.iter = iter; in __iomap_dio_rw() 508 dio->submit.waiter = current; in __iomap_dio_rw() 509 dio->submit.poll_bio = NULL; in __iomap_dio_rw() 652 if (!READ_ONCE(dio->submit.waiter)) in __iomap_dio_rw() [all …]
|
/linux/drivers/gpu/drm/msm/adreno/ |
A D | a2xx_gpu.c | 13 static void a2xx_submit(struct msm_gpu *gpu, struct msm_gem_submit *submit) in a2xx_submit() argument 16 struct msm_ringbuffer *ring = submit->ring; in a2xx_submit() 19 for (i = 0; i < submit->nr_cmds; i++) { in a2xx_submit() 20 switch (submit->cmd[i].type) { in a2xx_submit() 26 if (priv->lastctx == submit->queue->ctx) in a2xx_submit() 31 OUT_RING(ring, lower_32_bits(submit->cmd[i].iova)); in a2xx_submit() 32 OUT_RING(ring, submit->cmd[i].size); in a2xx_submit() 39 OUT_RING(ring, submit->seqno); in a2xx_submit() 48 OUT_RING(ring, submit->seqno); in a2xx_submit() 479 .submit = a2xx_submit,
|
A D | a5xx_gpu.c | 74 for (i = 0; i < submit->nr_cmds; i++) { in a5xx_submit_in_rb() 75 switch (submit->cmd[i].type) { in a5xx_submit_in_rb() 84 obj = submit->bos[submit->cmd[i].idx].obj; in a5xx_submit_in_rb() 85 dwords = submit->cmd[i].size; in a5xx_submit_in_rb() 121 ring->memptrs->fence = submit->seqno; in a5xx_submit_in_rb() 135 a5xx_submit_in_rb(gpu, submit); in a5xx_submit() 165 switch (submit->cmd[i].type) { in a5xx_submit() 176 OUT_RING(ring, submit->cmd[i].size); in a5xx_submit() 210 OUT_RING(ring, submit->seqno); in a5xx_submit() 221 OUT_RING(ring, submit->seqno); in a5xx_submit() [all …]
|
A D | a3xx_gpu.c | 31 static void a3xx_submit(struct msm_gpu *gpu, struct msm_gem_submit *submit) in a3xx_submit() argument 34 struct msm_ringbuffer *ring = submit->ring; in a3xx_submit() 37 for (i = 0; i < submit->nr_cmds; i++) { in a3xx_submit() 38 switch (submit->cmd[i].type) { in a3xx_submit() 44 if (priv->lastctx == submit->queue->ctx) in a3xx_submit() 49 OUT_RING(ring, lower_32_bits(submit->cmd[i].iova)); in a3xx_submit() 50 OUT_RING(ring, submit->cmd[i].size); in a3xx_submit() 57 OUT_RING(ring, submit->seqno); in a3xx_submit() 74 OUT_RING(ring, submit->seqno); in a3xx_submit() 494 .submit = a3xx_submit,
|
/linux/drivers/gpu/drm/i915/selftests/ |
A D | i915_active.c | 80 struct i915_sw_fence *submit; in __live_active_setup() local 89 submit = heap_fence_create(GFP_KERNEL); in __live_active_setup() 90 if (!submit) { in __live_active_setup() 108 err = i915_sw_fence_await_sw_fence_gfp(&rq->submit, in __live_active_setup() 109 submit, in __live_active_setup() 134 i915_sw_fence_commit(submit); in __live_active_setup() 135 heap_fence_put(submit); in __live_active_setup()
|
/linux/drivers/gpu/drm/tegra/ |
A D | firewall.c | 9 struct tegra_drm_submit_data *submit; member 31 for (i = 0; i < fw->submit->num_used_mappings; i++) { in fw_check_addr_valid() 32 struct tegra_drm_mapping *m = fw->submit->used_mappings[i].mapping; in fw_check_addr_valid() 142 u32 words, struct tegra_drm_submit_data *submit, in tegra_drm_fw_validate() argument 146 .submit = submit, in tegra_drm_fw_validate()
|