Lines Matching refs:jrdev
128 struct device *jrdev; member
149 struct device *jrdev = ctx->jrdev; in aead_null_set_sh_desc() local
150 struct caam_drv_private *ctrlpriv = dev_get_drvdata(jrdev->parent); in aead_null_set_sh_desc()
171 dma_sync_single_for_device(jrdev, ctx->sh_desc_enc_dma, in aead_null_set_sh_desc()
190 dma_sync_single_for_device(jrdev, ctx->sh_desc_dec_dma, in aead_null_set_sh_desc()
203 struct device *jrdev = ctx->jrdev; in aead_set_sh_desc() local
204 struct caam_drv_private *ctrlpriv = dev_get_drvdata(jrdev->parent); in aead_set_sh_desc()
274 dma_sync_single_for_device(jrdev, ctx->sh_desc_enc_dma, in aead_set_sh_desc()
296 dma_sync_single_for_device(jrdev, ctx->sh_desc_dec_dma, in aead_set_sh_desc()
320 dma_sync_single_for_device(jrdev, ctx->sh_desc_enc_dma, in aead_set_sh_desc()
341 struct device *jrdev = ctx->jrdev; in gcm_set_sh_desc() local
365 dma_sync_single_for_device(jrdev, ctx->sh_desc_enc_dma, in gcm_set_sh_desc()
382 dma_sync_single_for_device(jrdev, ctx->sh_desc_dec_dma, in gcm_set_sh_desc()
406 struct device *jrdev = ctx->jrdev; in rfc4106_set_sh_desc() local
431 dma_sync_single_for_device(jrdev, ctx->sh_desc_enc_dma, in rfc4106_set_sh_desc()
449 dma_sync_single_for_device(jrdev, ctx->sh_desc_dec_dma, in rfc4106_set_sh_desc()
474 struct device *jrdev = ctx->jrdev; in rfc4543_set_sh_desc() local
499 dma_sync_single_for_device(jrdev, ctx->sh_desc_enc_dma, in rfc4543_set_sh_desc()
517 dma_sync_single_for_device(jrdev, ctx->sh_desc_dec_dma, in rfc4543_set_sh_desc()
540 struct device *jrdev = ctx->jrdev; in chachapoly_set_sh_desc() local
550 dma_sync_single_for_device(jrdev, ctx->sh_desc_enc_dma, in chachapoly_set_sh_desc()
556 dma_sync_single_for_device(jrdev, ctx->sh_desc_dec_dma, in chachapoly_set_sh_desc()
595 struct device *jrdev = ctx->jrdev; in aead_setkey() local
596 struct caam_drv_private *ctrlpriv = dev_get_drvdata(jrdev->parent); in aead_setkey()
603 dev_dbg(jrdev, "keylen %d enckeylen %d authkeylen %d\n", in aead_setkey()
624 dma_sync_single_for_device(jrdev, ctx->key_dma, in aead_setkey()
630 ret = gen_split_key(ctx->jrdev, ctx->key, &ctx->adata, keys.authkey, in aead_setkey()
639 dma_sync_single_for_device(jrdev, ctx->key_dma, ctx->adata.keylen_pad + in aead_setkey()
676 struct device *jrdev = ctx->jrdev; in gcm_setkey() local
687 dma_sync_single_for_device(jrdev, ctx->key_dma, keylen, ctx->dir); in gcm_setkey()
697 struct device *jrdev = ctx->jrdev; in rfc4106_setkey() local
714 dma_sync_single_for_device(jrdev, ctx->key_dma, ctx->cdata.keylen, in rfc4106_setkey()
723 struct device *jrdev = ctx->jrdev; in rfc4543_setkey() local
740 dma_sync_single_for_device(jrdev, ctx->key_dma, ctx->cdata.keylen, in rfc4543_setkey()
752 struct device *jrdev = ctx->jrdev; in skcipher_setkey() local
773 dma_sync_single_for_device(jrdev, ctx->sh_desc_enc_dma, in skcipher_setkey()
780 dma_sync_single_for_device(jrdev, ctx->sh_desc_dec_dma, in skcipher_setkey()
792 struct device *jrdev = ctx->jrdev; in paes_skcipher_setkey() local
811 dev_err(jrdev, "bad key length\n"); in paes_skcipher_setkey()
823 dma_sync_single_for_device(jrdev, ctx->key_dma, keylen, DMA_TO_DEVICE); in paes_skcipher_setkey()
827 ctx->protected_key_dma = dma_map_single(jrdev, ctx->protected_key, in paes_skcipher_setkey()
832 ctx->protected_key_dma = dma_map_single(jrdev, ctx->protected_key, in paes_skcipher_setkey()
913 struct device *jrdev = ctx->jrdev; in xts_skcipher_setkey() local
914 struct caam_drv_private *ctrlpriv = dev_get_drvdata(jrdev->parent); in xts_skcipher_setkey()
920 dev_dbg(jrdev, "key size mismatch\n"); in xts_skcipher_setkey()
940 dma_sync_single_for_device(jrdev, ctx->sh_desc_enc_dma, in xts_skcipher_setkey()
946 dma_sync_single_for_device(jrdev, ctx->sh_desc_dec_dma, in xts_skcipher_setkey()
1046 static void aead_crypt_done(struct device *jrdev, u32 *desc, u32 err, in aead_crypt_done() argument
1051 struct caam_drv_private_jr *jrp = dev_get_drvdata(jrdev); in aead_crypt_done()
1056 dev_dbg(jrdev, "%s %d: err 0x%x\n", __func__, __LINE__, err); in aead_crypt_done()
1062 ecode = caam_jr_strstatus(jrdev, err); in aead_crypt_done()
1064 aead_unmap(jrdev, edesc, req); in aead_crypt_done()
1085 static void skcipher_crypt_done(struct device *jrdev, u32 *desc, u32 err, in skcipher_crypt_done() argument
1092 struct caam_drv_private_jr *jrp = dev_get_drvdata(jrdev); in skcipher_crypt_done()
1097 dev_dbg(jrdev, "%s %d: err 0x%x\n", __func__, __LINE__, err); in skcipher_crypt_done()
1102 ecode = caam_jr_strstatus(jrdev, err); in skcipher_crypt_done()
1104 skcipher_unmap(jrdev, edesc, req); in skcipher_crypt_done()
1273 struct caam_drv_private *ctrlpriv = dev_get_drvdata(ctx->jrdev->parent); in init_authenc_job()
1322 struct device *jrdev = ctx->jrdev; in init_skcipher_job() local
1334 dev_dbg(jrdev, "asked=%d, cryptlen%d\n", in init_skcipher_job()
1367 desc_dma = dma_map_single(jrdev, desc, desc_bytes(desc), DMA_TO_DEVICE); in init_skcipher_job()
1391 struct device *jrdev = ctx->jrdev; in aead_edesc_alloc() local
1407 dev_err(jrdev, "Insufficient bytes (%d) in src S/G\n", in aead_edesc_alloc()
1414 dev_err(jrdev, "Insufficient bytes (%d) in dst S/G\n", in aead_edesc_alloc()
1424 dev_err(jrdev, "Insufficient bytes (%d) in src S/G\n", in aead_edesc_alloc()
1431 mapped_src_nents = dma_map_sg(jrdev, req->src, src_nents, in aead_edesc_alloc()
1434 dev_err(jrdev, "unable to map source\n"); in aead_edesc_alloc()
1440 mapped_src_nents = dma_map_sg(jrdev, req->src, in aead_edesc_alloc()
1443 dev_err(jrdev, "unable to map source\n"); in aead_edesc_alloc()
1452 mapped_dst_nents = dma_map_sg(jrdev, req->dst, in aead_edesc_alloc()
1456 dev_err(jrdev, "unable to map destination\n"); in aead_edesc_alloc()
1457 dma_unmap_sg(jrdev, req->src, src_nents, in aead_edesc_alloc()
1481 caam_unmap(jrdev, req->src, req->dst, src_nents, dst_nents, 0, in aead_edesc_alloc()
1511 edesc->sec4_sg_dma = dma_map_single(jrdev, edesc->sec4_sg, in aead_edesc_alloc()
1513 if (dma_mapping_error(jrdev, edesc->sec4_sg_dma)) { in aead_edesc_alloc()
1514 dev_err(jrdev, "unable to map S/G table\n"); in aead_edesc_alloc()
1515 aead_unmap(jrdev, edesc, req); in aead_edesc_alloc()
1525 static int aead_enqueue_req(struct device *jrdev, struct aead_request *req) in aead_enqueue_req() argument
1527 struct caam_drv_private_jr *jrpriv = dev_get_drvdata(jrdev); in aead_enqueue_req()
1542 ret = caam_jr_enqueue(jrdev, desc, aead_crypt_done, req); in aead_enqueue_req()
1545 aead_unmap(jrdev, edesc, req); in aead_enqueue_req()
1557 struct device *jrdev = ctx->jrdev; in chachapoly_crypt() local
1573 return aead_enqueue_req(jrdev, req); in chachapoly_crypt()
1591 struct device *jrdev = ctx->jrdev; in aead_crypt() local
1607 return aead_enqueue_req(jrdev, req); in aead_crypt()
1630 ret = caam_jr_enqueue(ctx->jrdev, desc, aead_crypt_done, req); in aead_do_one_req()
1636 aead_unmap(ctx->jrdev, rctx->edesc, req); in aead_do_one_req()
1650 struct device *jrdev = ctx->jrdev; in gcm_crypt() local
1666 return aead_enqueue_req(jrdev, req); in gcm_crypt()
1698 struct device *jrdev = ctx->jrdev; in skcipher_edesc_alloc() local
1711 dev_err(jrdev, "Insufficient bytes (%d) in src S/G\n", in skcipher_edesc_alloc()
1719 dev_err(jrdev, "Insufficient bytes (%d) in dst S/G\n", in skcipher_edesc_alloc()
1726 mapped_src_nents = dma_map_sg(jrdev, req->src, src_nents, in skcipher_edesc_alloc()
1729 dev_err(jrdev, "unable to map source\n"); in skcipher_edesc_alloc()
1733 mapped_src_nents = dma_map_sg(jrdev, req->src, src_nents, in skcipher_edesc_alloc()
1736 dev_err(jrdev, "unable to map source\n"); in skcipher_edesc_alloc()
1739 mapped_dst_nents = dma_map_sg(jrdev, req->dst, dst_nents, in skcipher_edesc_alloc()
1742 dev_err(jrdev, "unable to map destination\n"); in skcipher_edesc_alloc()
1743 dma_unmap_sg(jrdev, req->src, src_nents, DMA_TO_DEVICE); in skcipher_edesc_alloc()
1788 dev_err(jrdev, "could not allocate extended descriptor\n"); in skcipher_edesc_alloc()
1789 caam_unmap(jrdev, req->src, req->dst, src_nents, dst_nents, 0, in skcipher_edesc_alloc()
1808 iv_dma = dma_map_single(jrdev, iv, ivsize, DMA_BIDIRECTIONAL); in skcipher_edesc_alloc()
1809 if (dma_mapping_error(jrdev, iv_dma)) { in skcipher_edesc_alloc()
1810 dev_err(jrdev, "unable to map IV\n"); in skcipher_edesc_alloc()
1811 caam_unmap(jrdev, req->src, req->dst, src_nents, in skcipher_edesc_alloc()
1836 edesc->sec4_sg_dma = dma_map_single(jrdev, edesc->sec4_sg, in skcipher_edesc_alloc()
1839 if (dma_mapping_error(jrdev, edesc->sec4_sg_dma)) { in skcipher_edesc_alloc()
1840 dev_err(jrdev, "unable to map S/G table\n"); in skcipher_edesc_alloc()
1841 caam_unmap(jrdev, req->src, req->dst, src_nents, in skcipher_edesc_alloc()
1867 ret = caam_jr_enqueue(ctx->jrdev, desc, skcipher_crypt_done, req); in skcipher_do_one_req()
1873 skcipher_unmap(ctx->jrdev, rctx->edesc, req); in skcipher_do_one_req()
1895 struct device *jrdev = ctx->jrdev; in skcipher_crypt() local
1896 struct caam_drv_private_jr *jrpriv = dev_get_drvdata(jrdev); in skcipher_crypt()
1897 struct caam_drv_private *ctrlpriv = dev_get_drvdata(jrdev->parent); in skcipher_crypt()
1952 ret = caam_jr_enqueue(jrdev, desc, skcipher_crypt_done, req); in skcipher_crypt()
1955 skcipher_unmap(jrdev, edesc, req); in skcipher_crypt()
3689 ctx->jrdev = caam_jr_alloc(); in caam_init_common()
3690 if (IS_ERR(ctx->jrdev)) { in caam_init_common()
3692 return PTR_ERR(ctx->jrdev); in caam_init_common()
3695 priv = dev_get_drvdata(ctx->jrdev->parent); in caam_init_common()
3701 dma_addr = dma_map_single_attrs(ctx->jrdev, ctx->sh_desc_enc, in caam_init_common()
3706 if (dma_mapping_error(ctx->jrdev, dma_addr)) { in caam_init_common()
3707 dev_err(ctx->jrdev, "unable to map key, shared descriptors\n"); in caam_init_common()
3708 caam_jr_free(ctx->jrdev); in caam_init_common()
3775 dma_unmap_single_attrs(ctx->jrdev, ctx->sh_desc_enc_dma, in caam_exit_common()
3779 caam_jr_free(ctx->jrdev); in caam_exit_common()