Lines Matching defs:dma

13 #include <linux/dma-mapping.h>
203 * a 4-byte metadata that is inserted at the beginning of each dma packet.
205 * A dma packet is a sequence of descriptors terminated by setting the .eop
284 struct artpec6_crypto_dma_descriptors *dma;
431 struct artpec6_crypto_dma_descriptors *dma = common->dma;
435 list_for_each_entry_safe(b, next, &dma->bounce_buffers, list) {
484 struct artpec6_crypto_dma_descriptors *dma = common->dma;
490 ind = FIELD_PREP(PDMA_IN_DESCRQ_PUSH_LEN, dma->in_cnt - 1) |
491 FIELD_PREP(PDMA_IN_DESCRQ_PUSH_ADDR, dma->in_dma_addr >> 6);
493 statd = FIELD_PREP(PDMA_IN_STATQ_PUSH_LEN, dma->in_cnt - 1) |
494 FIELD_PREP(PDMA_IN_STATQ_PUSH_ADDR, dma->stat_dma_addr >> 6);
496 outd = FIELD_PREP(PDMA_OUT_DESCRQ_PUSH_LEN, dma->out_cnt - 1) |
497 FIELD_PREP(PDMA_OUT_DESCRQ_PUSH_ADDR, dma->out_dma_addr >> 6);
518 struct artpec6_crypto_dma_descriptors *dma = common->dma;
520 dma->out_cnt = 0;
521 dma->in_cnt = 0;
522 dma->map_count = 0;
523 INIT_LIST_HEAD(&dma->bounce_buffers);
548 struct artpec6_crypto_dma_descriptors *dma = common->dma;
551 if (dma->out_cnt >= PDMA_DESCR_COUNT ||
557 d = &dma->out[dma->out_cnt++];
581 struct artpec6_crypto_dma_descriptors *dma = common->dma;
584 if (dma->out_cnt >= PDMA_DESCR_COUNT ||
591 d = &dma->out[dma->out_cnt++];
607 struct artpec6_crypto_dma_descriptors *dma = common->dma;
614 if (dma->map_count >= ARRAY_SIZE(dma->maps))
621 map = &dma->maps[dma->map_count++];
647 struct artpec6_crypto_dma_descriptors *dma = common->dma;
650 ret = artpec6_crypto_dma_map_single(common, dma->in,
651 sizeof(dma->in[0]) * dma->in_cnt,
652 DMA_TO_DEVICE, &dma->in_dma_addr);
656 ret = artpec6_crypto_dma_map_single(common, dma->out,
657 sizeof(dma->out[0]) * dma->out_cnt,
658 DMA_TO_DEVICE, &dma->out_dma_addr);
663 dma->stat[dma->in_cnt - 1] = 0;
670 dma->stat,
671 sizeof(dma->stat[0]) * dma->in_cnt,
673 &dma->stat_dma_addr);
679 struct artpec6_crypto_dma_descriptors *dma = common->dma;
683 for (i = 0; i < dma->map_count; i++) {
684 struct artpec6_crypto_dma_map *map = &dma->maps[i];
689 dma->map_count = 0;
740 struct artpec6_crypto_dma_descriptors *dma = common->dma;
743 if (dma->in_cnt >= PDMA_DESCR_COUNT ||
748 d = &dma->in[dma->in_cnt++];
818 list_add_tail(&bbuf->list, &common->dma->bounce_buffers);
954 struct artpec6_crypto_dma_descriptors *dma = common->dma;
957 if (!dma->out_cnt || dma->out_cnt > PDMA_DESCR_COUNT) {
959 MODULE_NAME, dma->out_cnt ? "empty" : "full");
964 d = &dma->out[dma->out_cnt-1];
978 struct artpec6_crypto_dma_descriptors *dma = common->dma;
981 if (!dma->in_cnt || dma->in_cnt > PDMA_DESCR_COUNT) {
983 MODULE_NAME, dma->in_cnt ? "empty" : "full");
987 d = &dma->in[dma->in_cnt-1];
1051 common->dma = kmem_cache_alloc(ac->dma_cache, flags);
1052 if (!common->dma)
1061 artpec6_crypto_bounce_destroy(struct artpec6_crypto_dma_descriptors *dma)
1066 list_for_each_entry_safe(b, next, &dma->bounce_buffers, list) {
1077 artpec6_crypto_bounce_destroy(common->dma);
1078 kmem_cache_free(ac->dma_cache, common->dma);
1079 common->dma = NULL;
1646 * @return 0 if the dma job was successfully prepared
2097 struct artpec6_crypto_dma_descriptors *dma = req->dma;
2101 stataddr = dma->stat_dma_addr + 4 * (req->dma->in_cnt - 1);
2107 stat = req->dma->stat[req->dma->in_cnt-1];
2296 if (!req_ctx->common.dma) {