nx_ctx 25 drivers/crypto/nx/nx-aes-cbc.c struct nx_crypto_ctx *nx_ctx = crypto_tfm_ctx(tfm); nx_ctx 26 drivers/crypto/nx/nx-aes-cbc.c struct nx_csbcpb *csbcpb = nx_ctx->csbcpb; nx_ctx 28 drivers/crypto/nx/nx-aes-cbc.c nx_ctx_init(nx_ctx, HCOP_FC_AES); nx_ctx 33 drivers/crypto/nx/nx-aes-cbc.c nx_ctx->ap = &nx_ctx->props[NX_PROPS_AES_128]; nx_ctx 37 drivers/crypto/nx/nx-aes-cbc.c nx_ctx->ap = &nx_ctx->props[NX_PROPS_AES_192]; nx_ctx 41 drivers/crypto/nx/nx-aes-cbc.c nx_ctx->ap = &nx_ctx->props[NX_PROPS_AES_256]; nx_ctx 59 drivers/crypto/nx/nx-aes-cbc.c struct nx_crypto_ctx *nx_ctx = crypto_blkcipher_ctx(desc->tfm); nx_ctx 60 drivers/crypto/nx/nx-aes-cbc.c struct nx_csbcpb *csbcpb = nx_ctx->csbcpb; nx_ctx 65 drivers/crypto/nx/nx-aes-cbc.c spin_lock_irqsave(&nx_ctx->lock, irq_flags); nx_ctx 75 drivers/crypto/nx/nx-aes-cbc.c rc = nx_build_sg_lists(nx_ctx, desc, dst, src, &to_process, nx_ctx 80 drivers/crypto/nx/nx-aes-cbc.c if (!nx_ctx->op.inlen || !nx_ctx->op.outlen) { nx_ctx 85 drivers/crypto/nx/nx-aes-cbc.c rc = nx_hcall_sync(nx_ctx, &nx_ctx->op, nx_ctx 91 drivers/crypto/nx/nx-aes-cbc.c atomic_inc(&(nx_ctx->stats->aes_ops)); nx_ctx 93 drivers/crypto/nx/nx-aes-cbc.c &(nx_ctx->stats->aes_bytes)); nx_ctx 98 drivers/crypto/nx/nx-aes-cbc.c spin_unlock_irqrestore(&nx_ctx->lock, irq_flags); nx_ctx 27 drivers/crypto/nx/nx-aes-ccm.c struct nx_crypto_ctx *nx_ctx = crypto_tfm_ctx(&tfm->base); nx_ctx 28 drivers/crypto/nx/nx-aes-ccm.c struct nx_csbcpb *csbcpb = nx_ctx->csbcpb; nx_ctx 29 drivers/crypto/nx/nx-aes-ccm.c struct nx_csbcpb *csbcpb_aead = nx_ctx->csbcpb_aead; nx_ctx 31 drivers/crypto/nx/nx-aes-ccm.c nx_ctx_init(nx_ctx, HCOP_FC_AES); nx_ctx 37 drivers/crypto/nx/nx-aes-ccm.c nx_ctx->ap = &nx_ctx->props[NX_PROPS_AES_128]; nx_ctx 57 drivers/crypto/nx/nx-aes-ccm.c struct nx_crypto_ctx *nx_ctx = crypto_tfm_ctx(&tfm->base); nx_ctx 64 drivers/crypto/nx/nx-aes-ccm.c memcpy(nx_ctx->priv.ccm.nonce, in_key + key_len, 3); nx_ctx 158 drivers/crypto/nx/nx-aes-ccm.c struct nx_crypto_ctx *nx_ctx, nx_ctx 164 drivers/crypto/nx/nx-aes-ccm.c struct nx_sg *nx_insg = nx_ctx->in_sg; nx_ctx 165 drivers/crypto/nx/nx-aes-ccm.c struct nx_sg *nx_outsg = nx_ctx->out_sg; nx_ctx 189 drivers/crypto/nx/nx-aes-ccm.c b0 = nx_ctx->csbcpb->cpb.aes_ccm.in_pat_or_b0; nx_ctx 194 drivers/crypto/nx/nx-aes-ccm.c b0 = nx_ctx->csbcpb->cpb.aes_ccm.in_pat_or_b0; nx_ctx 195 drivers/crypto/nx/nx-aes-ccm.c b1 = nx_ctx->priv.ccm.iauth_tag; nx_ctx 201 drivers/crypto/nx/nx-aes-ccm.c b0 = nx_ctx->csbcpb_aead->cpb.aes_cca.b0; nx_ctx 202 drivers/crypto/nx/nx-aes-ccm.c b1 = nx_ctx->csbcpb_aead->cpb.aes_cca.b1; nx_ctx 205 drivers/crypto/nx/nx-aes-ccm.c b0 = nx_ctx->csbcpb_aead->cpb.aes_cca.b0; nx_ctx 206 drivers/crypto/nx/nx-aes-ccm.c b1 = nx_ctx->csbcpb_aead->cpb.aes_cca.b1; nx_ctx 239 drivers/crypto/nx/nx-aes-ccm.c nx_insg = nx_build_sg_list(nx_insg, b1, &len, nx_ctx->ap->sglen); nx_ctx 245 drivers/crypto/nx/nx-aes-ccm.c nx_ctx->ap->sglen); nx_ctx 252 drivers/crypto/nx/nx-aes-ccm.c nx_ctx->op.inlen = (nx_ctx->in_sg - nx_insg) * nx_ctx 254 drivers/crypto/nx/nx-aes-ccm.c nx_ctx->op.outlen = (nx_ctx->out_sg - nx_outsg) * nx_ctx 257 drivers/crypto/nx/nx-aes-ccm.c NX_CPB_FDM(nx_ctx->csbcpb) |= NX_FDM_ENDE_ENCRYPT; nx_ctx 258 drivers/crypto/nx/nx-aes-ccm.c NX_CPB_FDM(nx_ctx->csbcpb) |= NX_FDM_INTERMEDIATE; nx_ctx 260 drivers/crypto/nx/nx-aes-ccm.c result = nx_ctx->csbcpb->cpb.aes_ccm.out_pat_or_mac; nx_ctx 262 drivers/crypto/nx/nx-aes-ccm.c rc = nx_hcall_sync(nx_ctx, &nx_ctx->op, nx_ctx 267 drivers/crypto/nx/nx-aes-ccm.c atomic_inc(&(nx_ctx->stats->aes_ops)); nx_ctx 268 drivers/crypto/nx/nx-aes-ccm.c atomic64_add(assoclen, &nx_ctx->stats->aes_bytes); nx_ctx 276 drivers/crypto/nx/nx-aes-ccm.c max_sg_len = min_t(u64, nx_ctx->ap->sglen, nx_ctx 279 drivers/crypto/nx/nx-aes-ccm.c nx_ctx->ap->databytelen/NX_PAGE_SIZE); nx_ctx 283 drivers/crypto/nx/nx-aes-ccm.c nx_ctx->ap->databytelen); nx_ctx 285 drivers/crypto/nx/nx-aes-ccm.c nx_insg = nx_walk_and_build(nx_ctx->in_sg, nx_ctx 286 drivers/crypto/nx/nx-aes-ccm.c nx_ctx->ap->sglen, nx_ctx 291 drivers/crypto/nx/nx-aes-ccm.c NX_CPB_FDM(nx_ctx->csbcpb_aead) |= nx_ctx 294 drivers/crypto/nx/nx-aes-ccm.c NX_CPB_FDM(nx_ctx->csbcpb_aead) &= nx_ctx 299 drivers/crypto/nx/nx-aes-ccm.c nx_ctx->op_aead.inlen = (nx_ctx->in_sg - nx_insg) * nx_ctx 302 drivers/crypto/nx/nx-aes-ccm.c result = nx_ctx->csbcpb_aead->cpb.aes_cca.out_pat_or_b0; nx_ctx 304 drivers/crypto/nx/nx-aes-ccm.c rc = nx_hcall_sync(nx_ctx, &nx_ctx->op_aead, nx_ctx 309 drivers/crypto/nx/nx-aes-ccm.c memcpy(nx_ctx->csbcpb_aead->cpb.aes_cca.b0, nx_ctx 310 drivers/crypto/nx/nx-aes-ccm.c nx_ctx->csbcpb_aead->cpb.aes_cca.out_pat_or_b0, nx_ctx 313 drivers/crypto/nx/nx-aes-ccm.c NX_CPB_FDM(nx_ctx->csbcpb_aead) |= NX_FDM_CONTINUATION; nx_ctx 315 drivers/crypto/nx/nx-aes-ccm.c atomic_inc(&(nx_ctx->stats->aes_ops)); nx_ctx 316 drivers/crypto/nx/nx-aes-ccm.c atomic64_add(assoclen, &nx_ctx->stats->aes_bytes); nx_ctx 321 drivers/crypto/nx/nx-aes-ccm.c result = nx_ctx->csbcpb_aead->cpb.aes_cca.out_pat_or_b0; nx_ctx 333 drivers/crypto/nx/nx-aes-ccm.c struct nx_crypto_ctx *nx_ctx = crypto_tfm_ctx(req->base.tfm); nx_ctx 334 drivers/crypto/nx/nx-aes-ccm.c struct nx_csbcpb *csbcpb = nx_ctx->csbcpb; nx_ctx 337 drivers/crypto/nx/nx-aes-ccm.c struct nx_ccm_priv *priv = &nx_ctx->priv.ccm; nx_ctx 342 drivers/crypto/nx/nx-aes-ccm.c spin_lock_irqsave(&nx_ctx->lock, irq_flags); nx_ctx 351 drivers/crypto/nx/nx-aes-ccm.c rc = generate_pat(desc->info, req, nx_ctx, authsize, nbytes, assoclen, nx_ctx 368 drivers/crypto/nx/nx-aes-ccm.c NX_CPB_FDM(nx_ctx->csbcpb) &= ~NX_FDM_ENDE_ENCRYPT; nx_ctx 370 drivers/crypto/nx/nx-aes-ccm.c rc = nx_build_sg_lists(nx_ctx, desc, req->dst, req->src, nx_ctx 376 drivers/crypto/nx/nx-aes-ccm.c rc = nx_hcall_sync(nx_ctx, &nx_ctx->op, nx_ctx 393 drivers/crypto/nx/nx-aes-ccm.c atomic_inc(&(nx_ctx->stats->aes_ops)); nx_ctx 395 drivers/crypto/nx/nx-aes-ccm.c &(nx_ctx->stats->aes_bytes)); nx_ctx 403 drivers/crypto/nx/nx-aes-ccm.c spin_unlock_irqrestore(&nx_ctx->lock, irq_flags); nx_ctx 411 drivers/crypto/nx/nx-aes-ccm.c struct nx_crypto_ctx *nx_ctx = crypto_tfm_ctx(req->base.tfm); nx_ctx 412 drivers/crypto/nx/nx-aes-ccm.c struct nx_csbcpb *csbcpb = nx_ctx->csbcpb; nx_ctx 419 drivers/crypto/nx/nx-aes-ccm.c spin_lock_irqsave(&nx_ctx->lock, irq_flags); nx_ctx 421 drivers/crypto/nx/nx-aes-ccm.c rc = generate_pat(desc->info, req, nx_ctx, authsize, nbytes, assoclen, nx_ctx 439 drivers/crypto/nx/nx-aes-ccm.c rc = nx_build_sg_lists(nx_ctx, desc, req->dst, req->src, nx_ctx 445 drivers/crypto/nx/nx-aes-ccm.c rc = nx_hcall_sync(nx_ctx, &nx_ctx->op, nx_ctx 462 drivers/crypto/nx/nx-aes-ccm.c atomic_inc(&(nx_ctx->stats->aes_ops)); nx_ctx 464 drivers/crypto/nx/nx-aes-ccm.c &(nx_ctx->stats->aes_bytes)); nx_ctx 476 drivers/crypto/nx/nx-aes-ccm.c spin_unlock_irqrestore(&nx_ctx->lock, irq_flags); nx_ctx 482 drivers/crypto/nx/nx-aes-ccm.c struct nx_crypto_ctx *nx_ctx = crypto_tfm_ctx(req->base.tfm); nx_ctx 488 drivers/crypto/nx/nx-aes-ccm.c memcpy(iv + 1, nx_ctx->priv.ccm.nonce, 3); nx_ctx 512 drivers/crypto/nx/nx-aes-ccm.c struct nx_crypto_ctx *nx_ctx = crypto_tfm_ctx(req->base.tfm); nx_ctx 518 drivers/crypto/nx/nx-aes-ccm.c memcpy(iv + 1, nx_ctx->priv.ccm.nonce, 3); nx_ctx 26 drivers/crypto/nx/nx-aes-ctr.c struct nx_crypto_ctx *nx_ctx = crypto_tfm_ctx(tfm); nx_ctx 27 drivers/crypto/nx/nx-aes-ctr.c struct nx_csbcpb *csbcpb = nx_ctx->csbcpb; nx_ctx 29 drivers/crypto/nx/nx-aes-ctr.c nx_ctx_init(nx_ctx, HCOP_FC_AES); nx_ctx 34 drivers/crypto/nx/nx-aes-ctr.c nx_ctx->ap = &nx_ctx->props[NX_PROPS_AES_128]; nx_ctx 38 drivers/crypto/nx/nx-aes-ctr.c nx_ctx->ap = &nx_ctx->props[NX_PROPS_AES_192]; nx_ctx 42 drivers/crypto/nx/nx-aes-ctr.c nx_ctx->ap = &nx_ctx->props[NX_PROPS_AES_256]; nx_ctx 58 drivers/crypto/nx/nx-aes-ctr.c struct nx_crypto_ctx *nx_ctx = crypto_tfm_ctx(tfm); nx_ctx 63 drivers/crypto/nx/nx-aes-ctr.c memcpy(nx_ctx->priv.ctr.nonce, nx_ctx 77 drivers/crypto/nx/nx-aes-ctr.c struct nx_crypto_ctx *nx_ctx = crypto_blkcipher_ctx(desc->tfm); nx_ctx 78 drivers/crypto/nx/nx-aes-ctr.c struct nx_csbcpb *csbcpb = nx_ctx->csbcpb; nx_ctx 83 drivers/crypto/nx/nx-aes-ctr.c spin_lock_irqsave(&nx_ctx->lock, irq_flags); nx_ctx 88 drivers/crypto/nx/nx-aes-ctr.c rc = nx_build_sg_lists(nx_ctx, desc, dst, src, &to_process, nx_ctx 93 drivers/crypto/nx/nx-aes-ctr.c if (!nx_ctx->op.inlen || !nx_ctx->op.outlen) { nx_ctx 98 drivers/crypto/nx/nx-aes-ctr.c rc = nx_hcall_sync(nx_ctx, &nx_ctx->op, nx_ctx 105 drivers/crypto/nx/nx-aes-ctr.c atomic_inc(&(nx_ctx->stats->aes_ops)); nx_ctx 107 drivers/crypto/nx/nx-aes-ctr.c &(nx_ctx->stats->aes_bytes)); nx_ctx 112 drivers/crypto/nx/nx-aes-ctr.c spin_unlock_irqrestore(&nx_ctx->lock, irq_flags); nx_ctx 121 drivers/crypto/nx/nx-aes-ctr.c struct nx_crypto_ctx *nx_ctx = crypto_blkcipher_ctx(desc->tfm); nx_ctx 124 drivers/crypto/nx/nx-aes-ctr.c memcpy(iv, nx_ctx->priv.ctr.nonce, CTR_RFC3686_IV_SIZE); nx_ctx 25 drivers/crypto/nx/nx-aes-ecb.c struct nx_crypto_ctx *nx_ctx = crypto_tfm_ctx(tfm); nx_ctx 26 drivers/crypto/nx/nx-aes-ecb.c struct nx_csbcpb *csbcpb = (struct nx_csbcpb *)nx_ctx->csbcpb; nx_ctx 28 drivers/crypto/nx/nx-aes-ecb.c nx_ctx_init(nx_ctx, HCOP_FC_AES); nx_ctx 33 drivers/crypto/nx/nx-aes-ecb.c nx_ctx->ap = &nx_ctx->props[NX_PROPS_AES_128]; nx_ctx 37 drivers/crypto/nx/nx-aes-ecb.c nx_ctx->ap = &nx_ctx->props[NX_PROPS_AES_192]; nx_ctx 41 drivers/crypto/nx/nx-aes-ecb.c nx_ctx->ap = &nx_ctx->props[NX_PROPS_AES_256]; nx_ctx 59 drivers/crypto/nx/nx-aes-ecb.c struct nx_crypto_ctx *nx_ctx = crypto_blkcipher_ctx(desc->tfm); nx_ctx 60 drivers/crypto/nx/nx-aes-ecb.c struct nx_csbcpb *csbcpb = nx_ctx->csbcpb; nx_ctx 65 drivers/crypto/nx/nx-aes-ecb.c spin_lock_irqsave(&nx_ctx->lock, irq_flags); nx_ctx 75 drivers/crypto/nx/nx-aes-ecb.c rc = nx_build_sg_lists(nx_ctx, desc, dst, src, &to_process, nx_ctx 80 drivers/crypto/nx/nx-aes-ecb.c if (!nx_ctx->op.inlen || !nx_ctx->op.outlen) { nx_ctx 85 drivers/crypto/nx/nx-aes-ecb.c rc = nx_hcall_sync(nx_ctx, &nx_ctx->op, nx_ctx 90 drivers/crypto/nx/nx-aes-ecb.c atomic_inc(&(nx_ctx->stats->aes_ops)); nx_ctx 92 drivers/crypto/nx/nx-aes-ecb.c &(nx_ctx->stats->aes_bytes)); nx_ctx 98 drivers/crypto/nx/nx-aes-ecb.c spin_unlock_irqrestore(&nx_ctx->lock, irq_flags); nx_ctx 27 drivers/crypto/nx/nx-aes-gcm.c struct nx_crypto_ctx *nx_ctx = crypto_aead_ctx(tfm); nx_ctx 28 drivers/crypto/nx/nx-aes-gcm.c struct nx_csbcpb *csbcpb = nx_ctx->csbcpb; nx_ctx 29 drivers/crypto/nx/nx-aes-gcm.c struct nx_csbcpb *csbcpb_aead = nx_ctx->csbcpb_aead; nx_ctx 31 drivers/crypto/nx/nx-aes-gcm.c nx_ctx_init(nx_ctx, HCOP_FC_AES); nx_ctx 37 drivers/crypto/nx/nx-aes-gcm.c nx_ctx->ap = &nx_ctx->props[NX_PROPS_AES_128]; nx_ctx 42 drivers/crypto/nx/nx-aes-gcm.c nx_ctx->ap = &nx_ctx->props[NX_PROPS_AES_192]; nx_ctx 47 drivers/crypto/nx/nx-aes-gcm.c nx_ctx->ap = &nx_ctx->props[NX_PROPS_AES_256]; nx_ctx 66 drivers/crypto/nx/nx-aes-gcm.c struct nx_crypto_ctx *nx_ctx = crypto_aead_ctx(tfm); nx_ctx 67 drivers/crypto/nx/nx-aes-gcm.c char *nonce = nx_ctx->priv.gcm.nonce; nx_ctx 99 drivers/crypto/nx/nx-aes-gcm.c static int nx_gca(struct nx_crypto_ctx *nx_ctx, nx_ctx 105 drivers/crypto/nx/nx-aes-gcm.c struct nx_csbcpb *csbcpb_aead = nx_ctx->csbcpb_aead; nx_ctx 107 drivers/crypto/nx/nx-aes-gcm.c struct nx_sg *nx_sg = nx_ctx->in_sg; nx_ctx 123 drivers/crypto/nx/nx-aes-gcm.c nx_ctx->ap->sglen); nx_ctx 125 drivers/crypto/nx/nx-aes-gcm.c nx_ctx->ap->databytelen/NX_PAGE_SIZE); nx_ctx 133 drivers/crypto/nx/nx-aes-gcm.c nx_ctx->ap->databytelen); nx_ctx 137 drivers/crypto/nx/nx-aes-gcm.c nx_sg = nx_walk_and_build(nx_ctx->in_sg, max_sg_len, nx_ctx 145 drivers/crypto/nx/nx-aes-gcm.c nx_ctx->op_aead.inlen = (nx_ctx->in_sg - nx_sg) nx_ctx 148 drivers/crypto/nx/nx-aes-gcm.c rc = nx_hcall_sync(nx_ctx, &nx_ctx->op_aead, nx_ctx 158 drivers/crypto/nx/nx-aes-gcm.c atomic_inc(&(nx_ctx->stats->aes_ops)); nx_ctx 159 drivers/crypto/nx/nx-aes-gcm.c atomic64_add(assoclen, &(nx_ctx->stats->aes_bytes)); nx_ctx 173 drivers/crypto/nx/nx-aes-gcm.c struct nx_crypto_ctx *nx_ctx = nx_ctx 175 drivers/crypto/nx/nx-aes-gcm.c struct nx_csbcpb *csbcpb = nx_ctx->csbcpb; nx_ctx 188 drivers/crypto/nx/nx-aes-gcm.c nx_ctx->ap->sglen); nx_ctx 190 drivers/crypto/nx/nx-aes-gcm.c nx_ctx->ap->databytelen/NX_PAGE_SIZE); nx_ctx 201 drivers/crypto/nx/nx-aes-gcm.c nx_ctx->ap->databytelen); nx_ctx 205 drivers/crypto/nx/nx-aes-gcm.c nx_sg = nx_walk_and_build(nx_ctx->in_sg, max_sg_len, nx_ctx 213 drivers/crypto/nx/nx-aes-gcm.c nx_ctx->op.inlen = (nx_ctx->in_sg - nx_sg) nx_ctx 219 drivers/crypto/nx/nx-aes-gcm.c rc = nx_hcall_sync(nx_ctx, &nx_ctx->op, nx_ctx 231 drivers/crypto/nx/nx-aes-gcm.c atomic_inc(&(nx_ctx->stats->aes_ops)); nx_ctx 232 drivers/crypto/nx/nx-aes-gcm.c atomic64_add(assoclen, &(nx_ctx->stats->aes_bytes)); nx_ctx 247 drivers/crypto/nx/nx-aes-gcm.c struct nx_crypto_ctx *nx_ctx = nx_ctx 249 drivers/crypto/nx/nx-aes-gcm.c struct nx_csbcpb *csbcpb = nx_ctx->csbcpb; nx_ctx 271 drivers/crypto/nx/nx-aes-gcm.c in_sg = nx_build_sg_list(nx_ctx->in_sg, (u8 *) desc->info, nx_ctx 272 drivers/crypto/nx/nx-aes-gcm.c &len, nx_ctx->ap->sglen); nx_ctx 278 drivers/crypto/nx/nx-aes-gcm.c out_sg = nx_build_sg_list(nx_ctx->out_sg, (u8 *) out, &len, nx_ctx 279 drivers/crypto/nx/nx-aes-gcm.c nx_ctx->ap->sglen); nx_ctx 284 drivers/crypto/nx/nx-aes-gcm.c nx_ctx->op.inlen = (nx_ctx->in_sg - in_sg) * sizeof(struct nx_sg); nx_ctx 285 drivers/crypto/nx/nx-aes-gcm.c nx_ctx->op.outlen = (nx_ctx->out_sg - out_sg) * sizeof(struct nx_sg); nx_ctx 287 drivers/crypto/nx/nx-aes-gcm.c rc = nx_hcall_sync(nx_ctx, &nx_ctx->op, nx_ctx 291 drivers/crypto/nx/nx-aes-gcm.c atomic_inc(&(nx_ctx->stats->aes_ops)); nx_ctx 312 drivers/crypto/nx/nx-aes-gcm.c struct nx_crypto_ctx *nx_ctx = nx_ctx 315 drivers/crypto/nx/nx-aes-gcm.c struct nx_csbcpb *csbcpb = nx_ctx->csbcpb; nx_ctx 322 drivers/crypto/nx/nx-aes-gcm.c spin_lock_irqsave(&nx_ctx->lock, irq_flags); nx_ctx 342 drivers/crypto/nx/nx-aes-gcm.c rc = nx_gca(nx_ctx, req, csbcpb->cpb.aes_gcm.in_pat_or_aad, nx_ctx 361 drivers/crypto/nx/nx-aes-gcm.c rc = nx_build_sg_lists(nx_ctx, &desc, req->dst, nx_ctx 375 drivers/crypto/nx/nx-aes-gcm.c rc = nx_hcall_sync(nx_ctx, &nx_ctx->op, nx_ctx 388 drivers/crypto/nx/nx-aes-gcm.c atomic_inc(&(nx_ctx->stats->aes_ops)); nx_ctx 390 drivers/crypto/nx/nx-aes-gcm.c &(nx_ctx->stats->aes_bytes)); nx_ctx 404 drivers/crypto/nx/nx-aes-gcm.c u8 *itag = nx_ctx->priv.gcm.iauth_tag; nx_ctx 416 drivers/crypto/nx/nx-aes-gcm.c spin_unlock_irqrestore(&nx_ctx->lock, irq_flags); nx_ctx 442 drivers/crypto/nx/nx-aes-gcm.c struct nx_crypto_ctx *nx_ctx = nx_ctx 446 drivers/crypto/nx/nx-aes-gcm.c char *nonce = nx_ctx->priv.gcm.nonce; nx_ctx 459 drivers/crypto/nx/nx-aes-gcm.c struct nx_crypto_ctx *nx_ctx = nx_ctx 463 drivers/crypto/nx/nx-aes-gcm.c char *nonce = nx_ctx->priv.gcm.nonce; nx_ctx 32 drivers/crypto/nx/nx-aes-xcbc.c struct nx_crypto_ctx *nx_ctx = crypto_shash_ctx(desc); nx_ctx 33 drivers/crypto/nx/nx-aes-xcbc.c struct nx_csbcpb *csbcpb = nx_ctx->csbcpb; nx_ctx 37 drivers/crypto/nx/nx-aes-xcbc.c nx_ctx->ap = &nx_ctx->props[NX_PROPS_AES_128]; nx_ctx 61 drivers/crypto/nx/nx-aes-xcbc.c struct nx_crypto_ctx *nx_ctx = crypto_tfm_ctx(&desc->tfm->base); nx_ctx 62 drivers/crypto/nx/nx-aes-xcbc.c struct nx_csbcpb *csbcpb = nx_ctx->csbcpb; nx_ctx 81 drivers/crypto/nx/nx-aes-xcbc.c in_sg = nx_build_sg_list(nx_ctx->in_sg, (u8 *) keys, &len, nx_ctx 82 drivers/crypto/nx/nx-aes-xcbc.c nx_ctx->ap->sglen); nx_ctx 87 drivers/crypto/nx/nx-aes-xcbc.c out_sg = nx_build_sg_list(nx_ctx->out_sg, (u8 *) keys, &len, nx_ctx 88 drivers/crypto/nx/nx-aes-xcbc.c nx_ctx->ap->sglen); nx_ctx 93 drivers/crypto/nx/nx-aes-xcbc.c nx_ctx->op.inlen = (nx_ctx->in_sg - in_sg) * sizeof(struct nx_sg); nx_ctx 94 drivers/crypto/nx/nx-aes-xcbc.c nx_ctx->op.outlen = (nx_ctx->out_sg - out_sg) * sizeof(struct nx_sg); nx_ctx 96 drivers/crypto/nx/nx-aes-xcbc.c rc = nx_hcall_sync(nx_ctx, &nx_ctx->op, 0); nx_ctx 99 drivers/crypto/nx/nx-aes-xcbc.c atomic_inc(&(nx_ctx->stats->aes_ops)); nx_ctx 108 drivers/crypto/nx/nx-aes-xcbc.c in_sg = nx_build_sg_list(nx_ctx->in_sg, (u8 *) keys[1], &len, nx_ctx 109 drivers/crypto/nx/nx-aes-xcbc.c nx_ctx->ap->sglen); nx_ctx 115 drivers/crypto/nx/nx-aes-xcbc.c out_sg = nx_build_sg_list(nx_ctx->out_sg, out, &len, nx_ctx 116 drivers/crypto/nx/nx-aes-xcbc.c nx_ctx->ap->sglen); nx_ctx 121 drivers/crypto/nx/nx-aes-xcbc.c nx_ctx->op.inlen = (nx_ctx->in_sg - in_sg) * sizeof(struct nx_sg); nx_ctx 122 drivers/crypto/nx/nx-aes-xcbc.c nx_ctx->op.outlen = (nx_ctx->out_sg - out_sg) * sizeof(struct nx_sg); nx_ctx 124 drivers/crypto/nx/nx-aes-xcbc.c rc = nx_hcall_sync(nx_ctx, &nx_ctx->op, 0); nx_ctx 127 drivers/crypto/nx/nx-aes-xcbc.c atomic_inc(&(nx_ctx->stats->aes_ops)); nx_ctx 140 drivers/crypto/nx/nx-aes-xcbc.c struct nx_crypto_ctx *nx_ctx = crypto_tfm_ctx(tfm); nx_ctx 141 drivers/crypto/nx/nx-aes-xcbc.c struct nx_csbcpb *csbcpb = nx_ctx->csbcpb; nx_ctx 148 drivers/crypto/nx/nx-aes-xcbc.c nx_ctx_init(nx_ctx, HCOP_FC_AES); nx_ctx 170 drivers/crypto/nx/nx-aes-xcbc.c struct nx_crypto_ctx *nx_ctx = crypto_tfm_ctx(&desc->tfm->base); nx_ctx 171 drivers/crypto/nx/nx-aes-xcbc.c struct nx_csbcpb *csbcpb = nx_ctx->csbcpb; nx_ctx 180 drivers/crypto/nx/nx-aes-xcbc.c spin_lock_irqsave(&nx_ctx->lock, irq_flags); nx_ctx 195 drivers/crypto/nx/nx-aes-xcbc.c in_sg = nx_ctx->in_sg; nx_ctx 197 drivers/crypto/nx/nx-aes-xcbc.c nx_ctx->ap->sglen); nx_ctx 199 drivers/crypto/nx/nx-aes-xcbc.c nx_ctx->ap->databytelen/NX_PAGE_SIZE); nx_ctx 202 drivers/crypto/nx/nx-aes-xcbc.c out_sg = nx_build_sg_list(nx_ctx->out_sg, (u8 *)sctx->state, nx_ctx 203 drivers/crypto/nx/nx-aes-xcbc.c &len, nx_ctx->ap->sglen); nx_ctx 210 drivers/crypto/nx/nx-aes-xcbc.c nx_ctx->op.outlen = (nx_ctx->out_sg - out_sg) * sizeof(struct nx_sg); nx_ctx 230 drivers/crypto/nx/nx-aes-xcbc.c in_sg = nx_build_sg_list(nx_ctx->in_sg, nx_ctx 251 drivers/crypto/nx/nx-aes-xcbc.c nx_ctx->op.inlen = (nx_ctx->in_sg - in_sg) * nx_ctx 263 drivers/crypto/nx/nx-aes-xcbc.c if (!nx_ctx->op.inlen || !nx_ctx->op.outlen) { nx_ctx 268 drivers/crypto/nx/nx-aes-xcbc.c rc = nx_hcall_sync(nx_ctx, &nx_ctx->op, 0); nx_ctx 272 drivers/crypto/nx/nx-aes-xcbc.c atomic_inc(&(nx_ctx->stats->aes_ops)); nx_ctx 280 drivers/crypto/nx/nx-aes-xcbc.c in_sg = nx_ctx->in_sg; nx_ctx 288 drivers/crypto/nx/nx-aes-xcbc.c spin_unlock_irqrestore(&nx_ctx->lock, irq_flags); nx_ctx 295 drivers/crypto/nx/nx-aes-xcbc.c struct nx_crypto_ctx *nx_ctx = crypto_tfm_ctx(&desc->tfm->base); nx_ctx 296 drivers/crypto/nx/nx-aes-xcbc.c struct nx_csbcpb *csbcpb = nx_ctx->csbcpb; nx_ctx 302 drivers/crypto/nx/nx-aes-xcbc.c spin_lock_irqsave(&nx_ctx->lock, irq_flags); nx_ctx 324 drivers/crypto/nx/nx-aes-xcbc.c in_sg = nx_build_sg_list(nx_ctx->in_sg, (u8 *)sctx->buffer, nx_ctx 325 drivers/crypto/nx/nx-aes-xcbc.c &len, nx_ctx->ap->sglen); nx_ctx 333 drivers/crypto/nx/nx-aes-xcbc.c out_sg = nx_build_sg_list(nx_ctx->out_sg, out, &len, nx_ctx 334 drivers/crypto/nx/nx-aes-xcbc.c nx_ctx->ap->sglen); nx_ctx 341 drivers/crypto/nx/nx-aes-xcbc.c nx_ctx->op.inlen = (nx_ctx->in_sg - in_sg) * sizeof(struct nx_sg); nx_ctx 342 drivers/crypto/nx/nx-aes-xcbc.c nx_ctx->op.outlen = (nx_ctx->out_sg - out_sg) * sizeof(struct nx_sg); nx_ctx 344 drivers/crypto/nx/nx-aes-xcbc.c if (!nx_ctx->op.outlen) { nx_ctx 349 drivers/crypto/nx/nx-aes-xcbc.c rc = nx_hcall_sync(nx_ctx, &nx_ctx->op, 0); nx_ctx 353 drivers/crypto/nx/nx-aes-xcbc.c atomic_inc(&(nx_ctx->stats->aes_ops)); nx_ctx 357 drivers/crypto/nx/nx-aes-xcbc.c spin_unlock_irqrestore(&nx_ctx->lock, irq_flags); nx_ctx 22 drivers/crypto/nx/nx-sha256.c struct nx_crypto_ctx *nx_ctx = crypto_tfm_ctx(tfm); nx_ctx 29 drivers/crypto/nx/nx-sha256.c nx_ctx_init(nx_ctx, HCOP_FC_SHA); nx_ctx 31 drivers/crypto/nx/nx-sha256.c nx_ctx->ap = &nx_ctx->props[NX_PROPS_SHA256]; nx_ctx 33 drivers/crypto/nx/nx-sha256.c NX_CPB_SET_DIGEST_SIZE(nx_ctx->csbcpb, NX_DS_SHA256); nx_ctx 60 drivers/crypto/nx/nx-sha256.c struct nx_crypto_ctx *nx_ctx = crypto_tfm_ctx(&desc->tfm->base); nx_ctx 61 drivers/crypto/nx/nx-sha256.c struct nx_csbcpb *csbcpb = (struct nx_csbcpb *)nx_ctx->csbcpb; nx_ctx 70 drivers/crypto/nx/nx-sha256.c spin_lock_irqsave(&nx_ctx->lock, irq_flags); nx_ctx 87 drivers/crypto/nx/nx-sha256.c max_sg_len = min_t(u64, nx_ctx->ap->sglen, nx_ctx 90 drivers/crypto/nx/nx-sha256.c nx_ctx->ap->databytelen/NX_PAGE_SIZE); nx_ctx 93 drivers/crypto/nx/nx-sha256.c out_sg = nx_build_sg_list(nx_ctx->out_sg, (u8 *)sctx->state, nx_ctx 95 drivers/crypto/nx/nx-sha256.c nx_ctx->op.outlen = (nx_ctx->out_sg - out_sg) * sizeof(struct nx_sg); nx_ctx 104 drivers/crypto/nx/nx-sha256.c struct nx_sg *in_sg = nx_ctx->in_sg; nx_ctx 117 drivers/crypto/nx/nx-sha256.c used_sgs = in_sg - nx_ctx->in_sg; nx_ctx 135 drivers/crypto/nx/nx-sha256.c nx_ctx->op.inlen = (nx_ctx->in_sg - in_sg) * sizeof(struct nx_sg); nx_ctx 148 drivers/crypto/nx/nx-sha256.c if (!nx_ctx->op.inlen || !nx_ctx->op.outlen) { nx_ctx 153 drivers/crypto/nx/nx-sha256.c rc = nx_hcall_sync(nx_ctx, &nx_ctx->op, 0); nx_ctx 157 drivers/crypto/nx/nx-sha256.c atomic_inc(&(nx_ctx->stats->sha256_ops)); nx_ctx 172 drivers/crypto/nx/nx-sha256.c spin_unlock_irqrestore(&nx_ctx->lock, irq_flags); nx_ctx 179 drivers/crypto/nx/nx-sha256.c struct nx_crypto_ctx *nx_ctx = crypto_tfm_ctx(&desc->tfm->base); nx_ctx 180 drivers/crypto/nx/nx-sha256.c struct nx_csbcpb *csbcpb = (struct nx_csbcpb *)nx_ctx->csbcpb; nx_ctx 187 drivers/crypto/nx/nx-sha256.c spin_lock_irqsave(&nx_ctx->lock, irq_flags); nx_ctx 189 drivers/crypto/nx/nx-sha256.c max_sg_len = min_t(u64, nx_ctx->ap->sglen, nx_ctx 192 drivers/crypto/nx/nx-sha256.c nx_ctx->ap->databytelen/NX_PAGE_SIZE); nx_ctx 210 drivers/crypto/nx/nx-sha256.c in_sg = nx_build_sg_list(nx_ctx->in_sg, (u8 *) sctx->buf, nx_ctx 219 drivers/crypto/nx/nx-sha256.c out_sg = nx_build_sg_list(nx_ctx->out_sg, out, &len, max_sg_len); nx_ctx 226 drivers/crypto/nx/nx-sha256.c nx_ctx->op.inlen = (nx_ctx->in_sg - in_sg) * sizeof(struct nx_sg); nx_ctx 227 drivers/crypto/nx/nx-sha256.c nx_ctx->op.outlen = (nx_ctx->out_sg - out_sg) * sizeof(struct nx_sg); nx_ctx 228 drivers/crypto/nx/nx-sha256.c if (!nx_ctx->op.outlen) { nx_ctx 233 drivers/crypto/nx/nx-sha256.c rc = nx_hcall_sync(nx_ctx, &nx_ctx->op, 0); nx_ctx 237 drivers/crypto/nx/nx-sha256.c atomic_inc(&(nx_ctx->stats->sha256_ops)); nx_ctx 239 drivers/crypto/nx/nx-sha256.c atomic64_add(sctx->count, &(nx_ctx->stats->sha256_bytes)); nx_ctx 242 drivers/crypto/nx/nx-sha256.c spin_unlock_irqrestore(&nx_ctx->lock, irq_flags); nx_ctx 21 drivers/crypto/nx/nx-sha512.c struct nx_crypto_ctx *nx_ctx = crypto_tfm_ctx(tfm); nx_ctx 28 drivers/crypto/nx/nx-sha512.c nx_ctx_init(nx_ctx, HCOP_FC_SHA); nx_ctx 30 drivers/crypto/nx/nx-sha512.c nx_ctx->ap = &nx_ctx->props[NX_PROPS_SHA512]; nx_ctx 32 drivers/crypto/nx/nx-sha512.c NX_CPB_SET_DIGEST_SIZE(nx_ctx->csbcpb, NX_DS_SHA512); nx_ctx 60 drivers/crypto/nx/nx-sha512.c struct nx_crypto_ctx *nx_ctx = crypto_tfm_ctx(&desc->tfm->base); nx_ctx 61 drivers/crypto/nx/nx-sha512.c struct nx_csbcpb *csbcpb = (struct nx_csbcpb *)nx_ctx->csbcpb; nx_ctx 70 drivers/crypto/nx/nx-sha512.c spin_lock_irqsave(&nx_ctx->lock, irq_flags); nx_ctx 87 drivers/crypto/nx/nx-sha512.c max_sg_len = min_t(u64, nx_ctx->ap->sglen, nx_ctx 90 drivers/crypto/nx/nx-sha512.c nx_ctx->ap->databytelen/NX_PAGE_SIZE); nx_ctx 93 drivers/crypto/nx/nx-sha512.c out_sg = nx_build_sg_list(nx_ctx->out_sg, (u8 *)sctx->state, nx_ctx 95 drivers/crypto/nx/nx-sha512.c nx_ctx->op.outlen = (nx_ctx->out_sg - out_sg) * sizeof(struct nx_sg); nx_ctx 104 drivers/crypto/nx/nx-sha512.c struct nx_sg *in_sg = nx_ctx->in_sg; nx_ctx 116 drivers/crypto/nx/nx-sha512.c used_sgs = in_sg - nx_ctx->in_sg; nx_ctx 134 drivers/crypto/nx/nx-sha512.c nx_ctx->op.inlen = (nx_ctx->in_sg - in_sg) * sizeof(struct nx_sg); nx_ctx 152 drivers/crypto/nx/nx-sha512.c if (!nx_ctx->op.inlen || !nx_ctx->op.outlen) { nx_ctx 157 drivers/crypto/nx/nx-sha512.c rc = nx_hcall_sync(nx_ctx, &nx_ctx->op, 0); nx_ctx 161 drivers/crypto/nx/nx-sha512.c atomic_inc(&(nx_ctx->stats->sha512_ops)); nx_ctx 175 drivers/crypto/nx/nx-sha512.c spin_unlock_irqrestore(&nx_ctx->lock, irq_flags); nx_ctx 182 drivers/crypto/nx/nx-sha512.c struct nx_crypto_ctx *nx_ctx = crypto_tfm_ctx(&desc->tfm->base); nx_ctx 183 drivers/crypto/nx/nx-sha512.c struct nx_csbcpb *csbcpb = (struct nx_csbcpb *)nx_ctx->csbcpb; nx_ctx 191 drivers/crypto/nx/nx-sha512.c spin_lock_irqsave(&nx_ctx->lock, irq_flags); nx_ctx 193 drivers/crypto/nx/nx-sha512.c max_sg_len = min_t(u64, nx_ctx->ap->sglen, nx_ctx 196 drivers/crypto/nx/nx-sha512.c nx_ctx->ap->databytelen/NX_PAGE_SIZE); nx_ctx 219 drivers/crypto/nx/nx-sha512.c in_sg = nx_build_sg_list(nx_ctx->in_sg, sctx->buf, &len, nx_ctx 228 drivers/crypto/nx/nx-sha512.c out_sg = nx_build_sg_list(nx_ctx->out_sg, out, &len, nx_ctx 231 drivers/crypto/nx/nx-sha512.c nx_ctx->op.inlen = (nx_ctx->in_sg - in_sg) * sizeof(struct nx_sg); nx_ctx 232 drivers/crypto/nx/nx-sha512.c nx_ctx->op.outlen = (nx_ctx->out_sg - out_sg) * sizeof(struct nx_sg); nx_ctx 234 drivers/crypto/nx/nx-sha512.c if (!nx_ctx->op.outlen) { nx_ctx 239 drivers/crypto/nx/nx-sha512.c rc = nx_hcall_sync(nx_ctx, &nx_ctx->op, 0); nx_ctx 243 drivers/crypto/nx/nx-sha512.c atomic_inc(&(nx_ctx->stats->sha512_ops)); nx_ctx 244 drivers/crypto/nx/nx-sha512.c atomic64_add(sctx->count[0], &(nx_ctx->stats->sha512_bytes)); nx_ctx 248 drivers/crypto/nx/nx-sha512.c spin_unlock_irqrestore(&nx_ctx->lock, irq_flags); nx_ctx 40 drivers/crypto/nx/nx.c int nx_hcall_sync(struct nx_crypto_ctx *nx_ctx, nx_ctx 47 drivers/crypto/nx/nx.c atomic_inc(&(nx_ctx->stats->sync_ops)); nx_ctx 56 drivers/crypto/nx/nx.c atomic_inc(&(nx_ctx->stats->errors)); nx_ctx 57 drivers/crypto/nx/nx.c atomic_set(&(nx_ctx->stats->last_error), op->hcall_err); nx_ctx 58 drivers/crypto/nx/nx.c atomic_set(&(nx_ctx->stats->last_error_pid), current->pid); nx_ctx 258 drivers/crypto/nx/nx.c int nx_build_sg_lists(struct nx_crypto_ctx *nx_ctx, nx_ctx 268 drivers/crypto/nx/nx.c struct nx_sg *nx_insg = nx_ctx->in_sg; nx_ctx 269 drivers/crypto/nx/nx.c struct nx_sg *nx_outsg = nx_ctx->out_sg; nx_ctx 272 drivers/crypto/nx/nx.c max_sg_len = min_t(u64, nx_ctx->ap->sglen, nx_ctx 275 drivers/crypto/nx/nx.c nx_ctx->ap->databytelen/NX_PAGE_SIZE); nx_ctx 280 drivers/crypto/nx/nx.c *nbytes = min_t(u64, *nbytes, nx_ctx->ap->databytelen); nx_ctx 293 drivers/crypto/nx/nx.c nx_ctx->op.inlen = trim_sg_list(nx_ctx->in_sg, nx_insg, delta, nbytes); nx_ctx 294 drivers/crypto/nx/nx.c nx_ctx->op.outlen = trim_sg_list(nx_ctx->out_sg, nx_outsg, delta, nbytes); nx_ctx 305 drivers/crypto/nx/nx.c void nx_ctx_init(struct nx_crypto_ctx *nx_ctx, unsigned int function) nx_ctx 307 drivers/crypto/nx/nx.c spin_lock_init(&nx_ctx->lock); nx_ctx 308 drivers/crypto/nx/nx.c memset(nx_ctx->kmem, 0, nx_ctx->kmem_len); nx_ctx 309 drivers/crypto/nx/nx.c nx_ctx->csbcpb->csb.valid |= NX_CSB_VALID_BIT; nx_ctx 311 drivers/crypto/nx/nx.c nx_ctx->op.flags = function; nx_ctx 312 drivers/crypto/nx/nx.c nx_ctx->op.csbcpb = __pa(nx_ctx->csbcpb); nx_ctx 313 drivers/crypto/nx/nx.c nx_ctx->op.in = __pa(nx_ctx->in_sg); nx_ctx 314 drivers/crypto/nx/nx.c nx_ctx->op.out = __pa(nx_ctx->out_sg); nx_ctx 316 drivers/crypto/nx/nx.c if (nx_ctx->csbcpb_aead) { nx_ctx 317 drivers/crypto/nx/nx.c nx_ctx->csbcpb_aead->csb.valid |= NX_CSB_VALID_BIT; nx_ctx 319 drivers/crypto/nx/nx.c nx_ctx->op_aead.flags = function; nx_ctx 320 drivers/crypto/nx/nx.c nx_ctx->op_aead.csbcpb = __pa(nx_ctx->csbcpb_aead); nx_ctx 321 drivers/crypto/nx/nx.c nx_ctx->op_aead.in = __pa(nx_ctx->in_sg); nx_ctx 322 drivers/crypto/nx/nx.c nx_ctx->op_aead.out = __pa(nx_ctx->out_sg); nx_ctx 652 drivers/crypto/nx/nx.c static int nx_crypto_ctx_init(struct nx_crypto_ctx *nx_ctx, u32 fc, u32 mode) nx_ctx 662 drivers/crypto/nx/nx.c nx_ctx->kmem_len = (5 * NX_PAGE_SIZE) + nx_ctx 665 drivers/crypto/nx/nx.c nx_ctx->kmem_len = (4 * NX_PAGE_SIZE) + nx_ctx 668 drivers/crypto/nx/nx.c nx_ctx->kmem = kmalloc(nx_ctx->kmem_len, GFP_KERNEL); nx_ctx 669 drivers/crypto/nx/nx.c if (!nx_ctx->kmem) nx_ctx 673 drivers/crypto/nx/nx.c nx_ctx->csbcpb = (struct nx_csbcpb *)(round_up((u64)nx_ctx->kmem, nx_ctx 675 drivers/crypto/nx/nx.c nx_ctx->in_sg = (struct nx_sg *)((u8 *)nx_ctx->csbcpb + NX_PAGE_SIZE); nx_ctx 676 drivers/crypto/nx/nx.c nx_ctx->out_sg = (struct nx_sg *)((u8 *)nx_ctx->in_sg + NX_PAGE_SIZE); nx_ctx 679 drivers/crypto/nx/nx.c nx_ctx->csbcpb_aead = nx_ctx 680 drivers/crypto/nx/nx.c (struct nx_csbcpb *)((u8 *)nx_ctx->out_sg + nx_ctx 685 drivers/crypto/nx/nx.c nx_ctx->stats = &nx_driver.stats; nx_ctx 686 drivers/crypto/nx/nx.c memcpy(nx_ctx->props, nx_driver.of.ap[fc][mode], nx_ctx 746 drivers/crypto/nx/nx.c struct nx_crypto_ctx *nx_ctx = crypto_tfm_ctx(tfm); nx_ctx 748 drivers/crypto/nx/nx.c kzfree(nx_ctx->kmem); nx_ctx 749 drivers/crypto/nx/nx.c nx_ctx->csbcpb = NULL; nx_ctx 750 drivers/crypto/nx/nx.c nx_ctx->csbcpb_aead = NULL; nx_ctx 751 drivers/crypto/nx/nx.c nx_ctx->in_sg = NULL; nx_ctx 752 drivers/crypto/nx/nx.c nx_ctx->out_sg = NULL; nx_ctx 757 drivers/crypto/nx/nx.c struct nx_crypto_ctx *nx_ctx = crypto_aead_ctx(tfm); nx_ctx 759 drivers/crypto/nx/nx.c kzfree(nx_ctx->kmem); nx_ctx 154 drivers/crypto/nx/nx.h void nx_ctx_init(struct nx_crypto_ctx *nx_ctx, unsigned int function);