Lines Matching refs:submit

24 	     struct async_submit_ctl *submit)  in do_async_xor()  argument
28 dma_async_tx_callback cb_fn_orig = submit->cb_fn; in do_async_xor()
29 void *cb_param_orig = submit->cb_param; in do_async_xor()
30 enum async_tx_flags flags_orig = submit->flags; in do_async_xor()
40 submit->flags = flags_orig; in do_async_xor()
46 submit->flags &= ~ASYNC_TX_ACK; in do_async_xor()
47 submit->flags |= ASYNC_TX_FENCE; in do_async_xor()
48 submit->cb_fn = NULL; in do_async_xor()
49 submit->cb_param = NULL; in do_async_xor()
51 submit->cb_fn = cb_fn_orig; in do_async_xor()
52 submit->cb_param = cb_param_orig; in do_async_xor()
54 if (submit->cb_fn) in do_async_xor()
56 if (submit->flags & ASYNC_TX_FENCE) in do_async_xor()
70 async_tx_quiesce(&submit->depend_tx); in do_async_xor()
83 async_tx_submit(chan, tx, submit); in do_async_xor()
84 submit->depend_tx = tx; in do_async_xor()
101 int src_cnt, size_t len, struct async_submit_ctl *submit) in do_sync_xor() argument
109 if (submit->scribble) in do_sync_xor()
110 srcs = submit->scribble; in do_sync_xor()
122 if (submit->flags & ASYNC_TX_XOR_ZERO_DST) in do_sync_xor()
135 async_tx_sync_epilog(submit); in do_sync_xor()
161 int src_cnt, size_t len, struct async_submit_ctl *submit) in async_xor() argument
163 struct dma_chan *chan = async_tx_find_channel(submit, DMA_XOR, in async_xor()
195 tx = do_async_xor(chan, unmap, submit); in async_xor()
208 if (submit->flags & ASYNC_TX_XOR_DROP_DST) { in async_xor()
214 async_tx_quiesce(&submit->depend_tx); in async_xor()
216 do_sync_xor(dest, src_list, offset, src_cnt, len, submit); in async_xor()
229 xor_val_chan(struct async_submit_ctl *submit, struct page *dest, in xor_val_chan() argument
235 return async_tx_find_channel(submit, DMA_XOR_VAL, &dest, 1, src_list, in xor_val_chan()
258 struct async_submit_ctl *submit) in async_xor_val() argument
260 struct dma_chan *chan = xor_val_chan(submit, dest, src_list, src_cnt, len); in async_xor_val()
277 if (submit->cb_fn) in async_xor_val()
279 if (submit->flags & ASYNC_TX_FENCE) in async_xor_val()
293 async_tx_quiesce(&submit->depend_tx); in async_xor_val()
303 async_tx_submit(chan, tx, submit); in async_xor_val()
305 enum async_tx_flags flags_orig = submit->flags; in async_xor_val()
312 submit->flags |= ASYNC_TX_XOR_DROP_DST; in async_xor_val()
313 submit->flags &= ~ASYNC_TX_ACK; in async_xor_val()
315 tx = async_xor(dest, src_list, offset, src_cnt, len, submit); in async_xor_val()
321 async_tx_sync_epilog(submit); in async_xor_val()
322 submit->flags = flags_orig; in async_xor_val()