Lines Matching defs:dma
13 #include <linux/dma-mapping.h>
202 * a 4-byte metadata that is inserted at the beginning of each dma packet.
204 * A dma packet is a sequence of descriptors terminated by setting the .eop
283 struct artpec6_crypto_dma_descriptors *dma;
430 struct artpec6_crypto_dma_descriptors *dma = common->dma;
434 list_for_each_entry_safe(b, next, &dma->bounce_buffers, list) {
483 struct artpec6_crypto_dma_descriptors *dma = common->dma;
489 ind = FIELD_PREP(PDMA_IN_DESCRQ_PUSH_LEN, dma->in_cnt - 1) |
490 FIELD_PREP(PDMA_IN_DESCRQ_PUSH_ADDR, dma->in_dma_addr >> 6);
492 statd = FIELD_PREP(PDMA_IN_STATQ_PUSH_LEN, dma->in_cnt - 1) |
493 FIELD_PREP(PDMA_IN_STATQ_PUSH_ADDR, dma->stat_dma_addr >> 6);
495 outd = FIELD_PREP(PDMA_OUT_DESCRQ_PUSH_LEN, dma->out_cnt - 1) |
496 FIELD_PREP(PDMA_OUT_DESCRQ_PUSH_ADDR, dma->out_dma_addr >> 6);
517 struct artpec6_crypto_dma_descriptors *dma = common->dma;
519 dma->out_cnt = 0;
520 dma->in_cnt = 0;
521 dma->map_count = 0;
522 INIT_LIST_HEAD(&dma->bounce_buffers);
547 struct artpec6_crypto_dma_descriptors *dma = common->dma;
550 if (dma->out_cnt >= PDMA_DESCR_COUNT ||
556 d = &dma->out[dma->out_cnt++];
580 struct artpec6_crypto_dma_descriptors *dma = common->dma;
583 if (dma->out_cnt >= PDMA_DESCR_COUNT ||
590 d = &dma->out[dma->out_cnt++];
606 struct artpec6_crypto_dma_descriptors *dma = common->dma;
613 if (dma->map_count >= ARRAY_SIZE(dma->maps))
620 map = &dma->maps[dma->map_count++];
646 struct artpec6_crypto_dma_descriptors *dma = common->dma;
649 ret = artpec6_crypto_dma_map_single(common, dma->in,
650 sizeof(dma->in[0]) * dma->in_cnt,
651 DMA_TO_DEVICE, &dma->in_dma_addr);
655 ret = artpec6_crypto_dma_map_single(common, dma->out,
656 sizeof(dma->out[0]) * dma->out_cnt,
657 DMA_TO_DEVICE, &dma->out_dma_addr);
662 dma->stat[dma->in_cnt - 1] = 0;
669 dma->stat,
670 sizeof(dma->stat[0]) * dma->in_cnt,
672 &dma->stat_dma_addr);
678 struct artpec6_crypto_dma_descriptors *dma = common->dma;
682 for (i = 0; i < dma->map_count; i++) {
683 struct artpec6_crypto_dma_map *map = &dma->maps[i];
688 dma->map_count = 0;
739 struct artpec6_crypto_dma_descriptors *dma = common->dma;
742 if (dma->in_cnt >= PDMA_DESCR_COUNT ||
747 d = &dma->in[dma->in_cnt++];
817 list_add_tail(&bbuf->list, &common->dma->bounce_buffers);
953 struct artpec6_crypto_dma_descriptors *dma = common->dma;
956 if (!dma->out_cnt || dma->out_cnt > PDMA_DESCR_COUNT) {
958 MODULE_NAME, dma->out_cnt ? "empty" : "full");
963 d = &dma->out[dma->out_cnt-1];
977 struct artpec6_crypto_dma_descriptors *dma = common->dma;
980 if (!dma->in_cnt || dma->in_cnt > PDMA_DESCR_COUNT) {
982 MODULE_NAME, dma->in_cnt ? "empty" : "full");
986 d = &dma->in[dma->in_cnt-1];
1050 common->dma = kmem_cache_alloc(ac->dma_cache, flags);
1051 if (!common->dma)
1060 artpec6_crypto_bounce_destroy(struct artpec6_crypto_dma_descriptors *dma)
1065 list_for_each_entry_safe(b, next, &dma->bounce_buffers, list) {
1076 artpec6_crypto_bounce_destroy(common->dma);
1077 kmem_cache_free(ac->dma_cache, common->dma);
1078 common->dma = NULL;
1645 * @return 0 if the dma job was successfully prepared
2096 struct artpec6_crypto_dma_descriptors *dma = req->dma;
2100 stataddr = dma->stat_dma_addr + 4 * (req->dma->in_cnt - 1);
2106 stat = req->dma->stat[req->dma->in_cnt-1];
2295 if (!req_ctx->common.dma) {