Lines Matching refs:edesc

124 	struct skcipher_edesc *edesc;  member
129 struct aead_edesc *edesc; member
949 struct aead_edesc *edesc, in aead_unmap() argument
953 edesc->src_nents, edesc->dst_nents, 0, 0, in aead_unmap()
954 edesc->sec4_sg_dma, edesc->sec4_sg_bytes); in aead_unmap()
957 static void skcipher_unmap(struct device *dev, struct skcipher_edesc *edesc, in skcipher_unmap() argument
964 edesc->src_nents, edesc->dst_nents, in skcipher_unmap()
965 edesc->iv_dma, ivsize, in skcipher_unmap()
966 edesc->sec4_sg_dma, edesc->sec4_sg_bytes); in skcipher_unmap()
975 struct aead_edesc *edesc; in aead_crypt_done() local
981 edesc = rctx->edesc; in aead_crypt_done()
982 has_bklog = edesc->bklog; in aead_crypt_done()
987 aead_unmap(jrdev, edesc, req); in aead_crypt_done()
989 kfree(edesc); in aead_crypt_done()
1005 struct skcipher_edesc *edesc; in skcipher_crypt_done() local
1015 edesc = rctx->edesc; in skcipher_crypt_done()
1016 has_bklog = edesc->bklog; in skcipher_crypt_done()
1020 skcipher_unmap(jrdev, edesc, req); in skcipher_crypt_done()
1028 memcpy(req->iv, (u8 *)edesc->sec4_sg + edesc->sec4_sg_bytes, in skcipher_crypt_done()
1038 edesc->dst_nents > 1 ? 100 : req->cryptlen, 1); in skcipher_crypt_done()
1040 kfree(edesc); in skcipher_crypt_done()
1056 struct aead_edesc *edesc, in init_aead_job() argument
1062 u32 *desc = edesc->hw_desc; in init_aead_job()
1076 src_dma = edesc->mapped_src_nents ? sg_dma_address(req->src) : in init_aead_job()
1080 src_dma = edesc->sec4_sg_dma; in init_aead_job()
1081 sec4_sg_index += edesc->mapped_src_nents; in init_aead_job()
1092 if (!edesc->mapped_dst_nents) { in init_aead_job()
1095 } else if (edesc->mapped_dst_nents == 1) { in init_aead_job()
1099 dst_dma = edesc->sec4_sg_dma + in init_aead_job()
1117 struct aead_edesc *edesc, in init_gcm_job() argument
1123 u32 *desc = edesc->hw_desc; in init_gcm_job()
1127 init_aead_job(req, edesc, all_contig, encrypt); in init_gcm_job()
1147 struct aead_edesc *edesc, bool all_contig, in init_chachapoly_job() argument
1153 u32 *desc = edesc->hw_desc; in init_chachapoly_job()
1156 init_aead_job(req, edesc, all_contig, encrypt); in init_chachapoly_job()
1181 struct aead_edesc *edesc, in init_authenc_job() argument
1193 u32 *desc = edesc->hw_desc; in init_authenc_job()
1211 init_aead_job(req, edesc, all_contig, encrypt); in init_authenc_job()
1233 struct skcipher_edesc *edesc, in init_skcipher_job() argument
1240 u32 *desc = edesc->hw_desc; in init_skcipher_job()
1249 (int)edesc->src_nents > 1 ? 100 : req->cryptlen, req->cryptlen); in init_skcipher_job()
1253 edesc->src_nents > 1 ? 100 : req->cryptlen, 1); in init_skcipher_job()
1261 if (ivsize || edesc->mapped_src_nents > 1) { in init_skcipher_job()
1262 src_dma = edesc->sec4_sg_dma; in init_skcipher_job()
1263 sec4_sg_index = edesc->mapped_src_nents + !!ivsize; in init_skcipher_job()
1274 } else if (!ivsize && edesc->mapped_dst_nents == 1) { in init_skcipher_job()
1277 dst_dma = edesc->sec4_sg_dma + sec4_sg_index * in init_skcipher_job()
1300 struct aead_edesc *edesc; in aead_edesc_alloc() local
1382 edesc = kzalloc(sizeof(*edesc) + desc_bytes + sec4_sg_bytes, in aead_edesc_alloc()
1384 if (!edesc) { in aead_edesc_alloc()
1390 edesc->src_nents = src_nents; in aead_edesc_alloc()
1391 edesc->dst_nents = dst_nents; in aead_edesc_alloc()
1392 edesc->mapped_src_nents = mapped_src_nents; in aead_edesc_alloc()
1393 edesc->mapped_dst_nents = mapped_dst_nents; in aead_edesc_alloc()
1394 edesc->sec4_sg = (void *)edesc + sizeof(struct aead_edesc) + in aead_edesc_alloc()
1397 rctx->edesc = edesc; in aead_edesc_alloc()
1404 edesc->sec4_sg + sec4_sg_index, 0); in aead_edesc_alloc()
1409 edesc->sec4_sg + sec4_sg_index, 0); in aead_edesc_alloc()
1413 return edesc; in aead_edesc_alloc()
1415 edesc->sec4_sg_dma = dma_map_single(jrdev, edesc->sec4_sg, in aead_edesc_alloc()
1417 if (dma_mapping_error(jrdev, edesc->sec4_sg_dma)) { in aead_edesc_alloc()
1419 aead_unmap(jrdev, edesc, req); in aead_edesc_alloc()
1420 kfree(edesc); in aead_edesc_alloc()
1424 edesc->sec4_sg_bytes = sec4_sg_bytes; in aead_edesc_alloc()
1426 return edesc; in aead_edesc_alloc()
1433 struct aead_edesc *edesc = rctx->edesc; in aead_enqueue_req() local
1434 u32 *desc = edesc->hw_desc; in aead_enqueue_req()
1449 aead_unmap(jrdev, edesc, req); in aead_enqueue_req()
1450 kfree(rctx->edesc); in aead_enqueue_req()
1458 struct aead_edesc *edesc; in chachapoly_crypt() local
1465 edesc = aead_edesc_alloc(req, CHACHAPOLY_DESC_JOB_IO_LEN, &all_contig, in chachapoly_crypt()
1467 if (IS_ERR(edesc)) in chachapoly_crypt()
1468 return PTR_ERR(edesc); in chachapoly_crypt()
1470 desc = edesc->hw_desc; in chachapoly_crypt()
1472 init_chachapoly_job(req, edesc, all_contig, encrypt); in chachapoly_crypt()
1492 struct aead_edesc *edesc; in aead_crypt() local
1499 edesc = aead_edesc_alloc(req, AUTHENC_DESC_JOB_IO_LEN, in aead_crypt()
1501 if (IS_ERR(edesc)) in aead_crypt()
1502 return PTR_ERR(edesc); in aead_crypt()
1505 init_authenc_job(req, edesc, all_contig, encrypt); in aead_crypt()
1508 DUMP_PREFIX_ADDRESS, 16, 4, edesc->hw_desc, in aead_crypt()
1509 desc_bytes(edesc->hw_desc), 1); in aead_crypt()
1529 u32 *desc = rctx->edesc->hw_desc; in aead_do_one_req()
1532 rctx->edesc->bklog = true; in aead_do_one_req()
1537 aead_unmap(ctx->jrdev, rctx->edesc, req); in aead_do_one_req()
1538 kfree(rctx->edesc); in aead_do_one_req()
1548 struct aead_edesc *edesc; in gcm_crypt() local
1555 edesc = aead_edesc_alloc(req, GCM_DESC_JOB_IO_LEN, &all_contig, in gcm_crypt()
1557 if (IS_ERR(edesc)) in gcm_crypt()
1558 return PTR_ERR(edesc); in gcm_crypt()
1561 init_gcm_job(req, edesc, all_contig, encrypt); in gcm_crypt()
1564 DUMP_PREFIX_ADDRESS, 16, 4, edesc->hw_desc, in gcm_crypt()
1565 desc_bytes(edesc->hw_desc), 1); in gcm_crypt()
1603 struct skcipher_edesc *edesc; in skcipher_edesc_alloc() local
1681 edesc = kzalloc(sizeof(*edesc) + desc_bytes + sec4_sg_bytes + ivsize, in skcipher_edesc_alloc()
1683 if (!edesc) { in skcipher_edesc_alloc()
1690 edesc->src_nents = src_nents; in skcipher_edesc_alloc()
1691 edesc->dst_nents = dst_nents; in skcipher_edesc_alloc()
1692 edesc->mapped_src_nents = mapped_src_nents; in skcipher_edesc_alloc()
1693 edesc->mapped_dst_nents = mapped_dst_nents; in skcipher_edesc_alloc()
1694 edesc->sec4_sg_bytes = sec4_sg_bytes; in skcipher_edesc_alloc()
1695 edesc->sec4_sg = (struct sec4_sg_entry *)((u8 *)edesc->hw_desc + in skcipher_edesc_alloc()
1697 rctx->edesc = edesc; in skcipher_edesc_alloc()
1701 iv = (u8 *)edesc->sec4_sg + sec4_sg_bytes; in skcipher_edesc_alloc()
1709 kfree(edesc); in skcipher_edesc_alloc()
1713 dma_to_sec4_sg_one(edesc->sec4_sg, iv_dma, ivsize, 0); in skcipher_edesc_alloc()
1716 sg_to_sec4_sg(req->src, req->cryptlen, edesc->sec4_sg + in skcipher_edesc_alloc()
1720 sg_to_sec4_sg(req->dst, req->cryptlen, edesc->sec4_sg + in skcipher_edesc_alloc()
1724 dma_to_sec4_sg_one(edesc->sec4_sg + dst_sg_idx + in skcipher_edesc_alloc()
1728 sg_to_sec4_set_last(edesc->sec4_sg + dst_sg_idx + in skcipher_edesc_alloc()
1732 edesc->sec4_sg_dma = dma_map_single(jrdev, edesc->sec4_sg, in skcipher_edesc_alloc()
1735 if (dma_mapping_error(jrdev, edesc->sec4_sg_dma)) { in skcipher_edesc_alloc()
1739 kfree(edesc); in skcipher_edesc_alloc()
1744 edesc->iv_dma = iv_dma; in skcipher_edesc_alloc()
1747 DUMP_PREFIX_ADDRESS, 16, 4, edesc->sec4_sg, in skcipher_edesc_alloc()
1750 return edesc; in skcipher_edesc_alloc()
1758 u32 *desc = rctx->edesc->hw_desc; in skcipher_do_one_req()
1761 rctx->edesc->bklog = true; in skcipher_do_one_req()
1766 skcipher_unmap(ctx->jrdev, rctx->edesc, req); in skcipher_do_one_req()
1767 kfree(rctx->edesc); in skcipher_do_one_req()
1785 struct skcipher_edesc *edesc; in skcipher_crypt() local
1819 edesc = skcipher_edesc_alloc(req, DESC_JOB_IO_LEN * CAAM_CMD_SZ); in skcipher_crypt()
1820 if (IS_ERR(edesc)) in skcipher_crypt()
1821 return PTR_ERR(edesc); in skcipher_crypt()
1824 init_skcipher_job(req, edesc, encrypt); in skcipher_crypt()
1827 DUMP_PREFIX_ADDRESS, 16, 4, edesc->hw_desc, in skcipher_crypt()
1828 desc_bytes(edesc->hw_desc), 1); in skcipher_crypt()
1830 desc = edesc->hw_desc; in skcipher_crypt()
1843 skcipher_unmap(jrdev, edesc, req); in skcipher_crypt()
1844 kfree(edesc); in skcipher_crypt()