Lines Matching refs:dma_chan
417 static int iop_adma_alloc_chan_resources(struct dma_chan *chan) in iop_adma_alloc_chan_resources()
484 iop_adma_prep_dma_interrupt(struct dma_chan *chan, unsigned long flags) in iop_adma_prep_dma_interrupt()
506 iop_adma_prep_dma_memcpy(struct dma_chan *chan, dma_addr_t dma_dest, in iop_adma_prep_dma_memcpy()
537 iop_adma_prep_dma_xor(struct dma_chan *chan, dma_addr_t dma_dest, in iop_adma_prep_dma_xor()
572 iop_adma_prep_dma_xor_val(struct dma_chan *chan, dma_addr_t *dma_src, in iop_adma_prep_dma_xor_val()
607 iop_adma_prep_dma_pq(struct dma_chan *chan, dma_addr_t *dst, dma_addr_t *src, in iop_adma_prep_dma_pq()
671 iop_adma_prep_dma_pq_val(struct dma_chan *chan, dma_addr_t *pq, dma_addr_t *src, in iop_adma_prep_dma_pq_val()
714 static void iop_adma_free_chan_resources(struct dma_chan *chan) in iop_adma_free_chan_resources()
752 static enum dma_status iop_adma_status(struct dma_chan *chan, in iop_adma_status()
816 static void iop_adma_issue_pending(struct dma_chan *chan) in iop_adma_issue_pending()
836 struct dma_chan *dma_chan; in iop_adma_memcpy_self_test() local
858 dma_chan = container_of(device->common.channels.next, in iop_adma_memcpy_self_test()
859 struct dma_chan, in iop_adma_memcpy_self_test()
861 if (iop_adma_alloc_chan_resources(dma_chan) < 1) { in iop_adma_memcpy_self_test()
866 dest_dma = dma_map_single(dma_chan->device->dev, dest, in iop_adma_memcpy_self_test()
868 src_dma = dma_map_single(dma_chan->device->dev, src, in iop_adma_memcpy_self_test()
870 tx = iop_adma_prep_dma_memcpy(dma_chan, dest_dma, src_dma, in iop_adma_memcpy_self_test()
875 iop_adma_issue_pending(dma_chan); in iop_adma_memcpy_self_test()
878 if (iop_adma_status(dma_chan, cookie, NULL) != in iop_adma_memcpy_self_test()
880 dev_err(dma_chan->device->dev, in iop_adma_memcpy_self_test()
886 iop_chan = to_iop_adma_chan(dma_chan); in iop_adma_memcpy_self_test()
890 dev_err(dma_chan->device->dev, in iop_adma_memcpy_self_test()
897 iop_adma_free_chan_resources(dma_chan); in iop_adma_memcpy_self_test()
915 struct dma_chan *dma_chan; in iop_adma_xor_val_self_test() local
956 dma_chan = container_of(device->common.channels.next, in iop_adma_xor_val_self_test()
957 struct dma_chan, in iop_adma_xor_val_self_test()
959 if (iop_adma_alloc_chan_resources(dma_chan) < 1) { in iop_adma_xor_val_self_test()
965 dest_dma = dma_map_page(dma_chan->device->dev, dest, 0, in iop_adma_xor_val_self_test()
968 dma_srcs[i] = dma_map_page(dma_chan->device->dev, xor_srcs[i], in iop_adma_xor_val_self_test()
970 tx = iop_adma_prep_dma_xor(dma_chan, dest_dma, dma_srcs, in iop_adma_xor_val_self_test()
975 iop_adma_issue_pending(dma_chan); in iop_adma_xor_val_self_test()
978 if (iop_adma_status(dma_chan, cookie, NULL) != in iop_adma_xor_val_self_test()
980 dev_err(dma_chan->device->dev, in iop_adma_xor_val_self_test()
986 iop_chan = to_iop_adma_chan(dma_chan); in iop_adma_xor_val_self_test()
992 dev_err(dma_chan->device->dev, in iop_adma_xor_val_self_test()
1002 if (!dma_has_cap(DMA_XOR_VAL, dma_chan->device->cap_mask)) in iop_adma_xor_val_self_test()
1013 dma_srcs[i] = dma_map_page(dma_chan->device->dev, in iop_adma_xor_val_self_test()
1016 tx = iop_adma_prep_dma_xor_val(dma_chan, dma_srcs, in iop_adma_xor_val_self_test()
1022 iop_adma_issue_pending(dma_chan); in iop_adma_xor_val_self_test()
1025 if (iop_adma_status(dma_chan, cookie, NULL) != DMA_COMPLETE) { in iop_adma_xor_val_self_test()
1026 dev_err(dma_chan->device->dev, in iop_adma_xor_val_self_test()
1033 dev_err(dma_chan->device->dev, in iop_adma_xor_val_self_test()
1042 dma_srcs[i] = dma_map_page(dma_chan->device->dev, in iop_adma_xor_val_self_test()
1045 tx = iop_adma_prep_dma_xor_val(dma_chan, dma_srcs, in iop_adma_xor_val_self_test()
1051 iop_adma_issue_pending(dma_chan); in iop_adma_xor_val_self_test()
1054 if (iop_adma_status(dma_chan, cookie, NULL) != DMA_COMPLETE) { in iop_adma_xor_val_self_test()
1055 dev_err(dma_chan->device->dev, in iop_adma_xor_val_self_test()
1062 dev_err(dma_chan->device->dev, in iop_adma_xor_val_self_test()
1069 iop_adma_free_chan_resources(dma_chan); in iop_adma_xor_val_self_test()
1093 struct dma_chan *dma_chan; in iop_adma_pq_zero_sum_self_test() local
1118 dma_chan = container_of(device->common.channels.next, in iop_adma_pq_zero_sum_self_test()
1119 struct dma_chan, in iop_adma_pq_zero_sum_self_test()
1121 if (iop_adma_alloc_chan_resources(dma_chan) < 1) { in iop_adma_pq_zero_sum_self_test()
1126 dev = dma_chan->device->dev; in iop_adma_pq_zero_sum_self_test()
1139 tx = iop_adma_prep_dma_pq(dma_chan, pq_dest, pq_src, in iop_adma_pq_zero_sum_self_test()
1146 iop_adma_issue_pending(dma_chan); in iop_adma_pq_zero_sum_self_test()
1149 if (iop_adma_status(dma_chan, cookie, NULL) != in iop_adma_pq_zero_sum_self_test()
1177 tx = iop_adma_prep_dma_pq_val(dma_chan, &pq_src[IOP_ADMA_NUM_SRC_TEST], in iop_adma_pq_zero_sum_self_test()
1183 iop_adma_issue_pending(dma_chan); in iop_adma_pq_zero_sum_self_test()
1186 if (iop_adma_status(dma_chan, cookie, NULL) != in iop_adma_pq_zero_sum_self_test()
1209 tx = iop_adma_prep_dma_pq_val(dma_chan, &pq_src[IOP_ADMA_NUM_SRC_TEST], in iop_adma_pq_zero_sum_self_test()
1215 iop_adma_issue_pending(dma_chan); in iop_adma_pq_zero_sum_self_test()
1218 if (iop_adma_status(dma_chan, cookie, NULL) != in iop_adma_pq_zero_sum_self_test()
1233 iop_adma_free_chan_resources(dma_chan); in iop_adma_pq_zero_sum_self_test()
1245 struct dma_chan *chan, *_chan; in iop_adma_remove()