Lines Matching defs:submit
40 struct async_submit_ctl *submit)
44 enum async_tx_flags flags_orig = submit->flags;
45 dma_async_tx_callback cb_fn_orig = submit->cb_fn;
46 dma_async_tx_callback cb_param_orig = submit->cb_param;
53 submit->flags = flags_orig;
60 submit->flags &= ~ASYNC_TX_ACK;
61 submit->flags |= ASYNC_TX_FENCE;
62 submit->cb_fn = NULL;
63 submit->cb_param = NULL;
65 submit->cb_fn = cb_fn_orig;
66 submit->cb_param = cb_param_orig;
70 if (submit->flags & ASYNC_TX_FENCE)
86 async_tx_quiesce(&submit->depend_tx);
91 async_tx_submit(chan, tx, submit);
92 submit->depend_tx = tx;
109 size_t len, struct async_submit_ctl *submit)
115 if (submit->scribble)
116 srcs = submit->scribble;
134 if (submit->flags & ASYNC_TX_PQ_XOR_DST) {
140 async_tx_sync_epilog(submit);
162 * @submit: submission/completion modifiers
179 size_t len, struct async_submit_ctl *submit)
182 struct dma_chan *chan = async_tx_find_channel(submit, DMA_PQ,
194 if (unmap && !(submit->flags & ASYNC_TX_PQ_XOR_DST) &&
245 tx = do_async_gen_syndrome(chan, coefs, j, unmap, dma_flags, submit);
256 async_tx_quiesce(&submit->depend_tx);
266 do_sync_gen_syndrome(blocks, offsets, disks, len, submit);
273 pq_val_chan(struct async_submit_ctl *submit, struct page **blocks, int disks, size_t len)
278 return async_tx_find_channel(submit, DMA_PQ_VAL, NULL, 0, blocks,
291 * @submit: submission / completion modifiers
295 * requires a temporary result buffer and submit->scribble to be
301 unsigned int s_off, struct async_submit_ctl *submit)
303 struct dma_chan *chan = pq_val_chan(submit, blocks, disks, len);
307 enum dma_ctrl_flags dma_flags = submit->cb_fn ? DMA_PREP_INTERRUPT : 0;
357 if (submit->flags & ASYNC_TX_FENCE)
368 async_tx_quiesce(&submit->depend_tx);
373 async_tx_submit(chan, tx, submit);
379 enum async_tx_flags flags_orig = submit->flags;
380 dma_async_tx_callback cb_fn_orig = submit->cb_fn;
381 void *scribble = submit->scribble;
382 void *cb_param_orig = submit->cb_param;
394 async_tx_quiesce(&submit->depend_tx);
402 init_async_submit(submit, ASYNC_TX_XOR_ZERO_DST, NULL,
405 blocks, offsets, disks-2, len, submit);
416 init_async_submit(submit, 0, NULL, NULL, NULL, scribble);
418 len, submit);
425 /* restore P, Q and submit */
431 submit->cb_fn = cb_fn_orig;
432 submit->cb_param = cb_param_orig;
433 submit->flags = flags_orig;
434 async_tx_sync_epilog(submit);