Searched refs:csbcpb (Results 1 - 13 of 13) sorted by relevance

/linux-4.1.27/drivers/crypto/nx/
H A Dnx-aes-cbc.c38 struct nx_csbcpb *csbcpb = nx_ctx->csbcpb; cbc_aes_nx_set_key() local
44 NX_CPB_SET_KEY_SIZE(csbcpb, NX_KS_AES_128); cbc_aes_nx_set_key()
48 NX_CPB_SET_KEY_SIZE(csbcpb, NX_KS_AES_192); cbc_aes_nx_set_key()
52 NX_CPB_SET_KEY_SIZE(csbcpb, NX_KS_AES_256); cbc_aes_nx_set_key()
59 csbcpb->cpb.hdr.mode = NX_MODE_AES_CBC; cbc_aes_nx_set_key()
60 memcpy(csbcpb->cpb.aes_cbc.key, in_key, key_len); cbc_aes_nx_set_key()
72 struct nx_csbcpb *csbcpb = nx_ctx->csbcpb; cbc_aes_nx_crypt() local
80 NX_CPB_FDM(csbcpb) |= NX_FDM_ENDE_ENCRYPT; cbc_aes_nx_crypt()
82 NX_CPB_FDM(csbcpb) &= ~NX_FDM_ENDE_ENCRYPT; cbc_aes_nx_crypt()
88 processed, csbcpb->cpb.aes_cbc.iv); cbc_aes_nx_crypt()
102 memcpy(desc->info, csbcpb->cpb.aes_cbc.cv, AES_BLOCK_SIZE); cbc_aes_nx_crypt()
104 atomic64_add(csbcpb->csb.processed_byte_count, cbc_aes_nx_crypt()
H A Dnx-aes-gcm.c40 struct nx_csbcpb *csbcpb = nx_ctx->csbcpb; gcm_aes_nx_set_key() local
47 NX_CPB_SET_KEY_SIZE(csbcpb, NX_KS_AES_128); gcm_aes_nx_set_key()
52 NX_CPB_SET_KEY_SIZE(csbcpb, NX_KS_AES_192); gcm_aes_nx_set_key()
57 NX_CPB_SET_KEY_SIZE(csbcpb, NX_KS_AES_256); gcm_aes_nx_set_key()
65 csbcpb->cpb.hdr.mode = NX_MODE_AES_GCM; gcm_aes_nx_set_key()
66 memcpy(csbcpb->cpb.aes_gcm.key, in_key, key_len); gcm_aes_nx_set_key()
197 struct nx_csbcpb *csbcpb = nx_ctx->csbcpb; gmac() local
204 csbcpb->cpb.hdr.mode = NX_MODE_AES_GMAC; gmac()
206 NX_CPB_FDM(csbcpb) &= ~NX_FDM_CONTINUATION; gmac()
215 memcpy(csbcpb->cpb.aes_gcm.iv_or_cnt, desc->info, AES_BLOCK_SIZE); gmac()
231 NX_CPB_FDM(csbcpb) |= NX_FDM_INTERMEDIATE; gmac()
233 NX_CPB_FDM(csbcpb) &= ~NX_FDM_INTERMEDIATE; gmac()
238 csbcpb->cpb.aes_gcm.bit_length_data = 0; gmac()
239 csbcpb->cpb.aes_gcm.bit_length_aad = 8 * nbytes; gmac()
246 memcpy(csbcpb->cpb.aes_gcm.in_pat_or_aad, gmac()
247 csbcpb->cpb.aes_gcm.out_pat_or_mac, AES_BLOCK_SIZE); gmac()
248 memcpy(csbcpb->cpb.aes_gcm.in_s0, gmac()
249 csbcpb->cpb.aes_gcm.out_s0, AES_BLOCK_SIZE); gmac()
251 NX_CPB_FDM(csbcpb) |= NX_FDM_CONTINUATION; gmac()
261 csbcpb->cpb.hdr.mode = NX_MODE_AES_GCM; gmac()
270 struct nx_csbcpb *csbcpb = nx_ctx->csbcpb; gcm_empty() local
281 csbcpb->cpb.hdr.mode = NX_MODE_AES_ECB; gcm_empty()
282 memcpy(csbcpb->cpb.aes_ecb.key, csbcpb->cpb.aes_gcm.key, gcm_empty()
283 sizeof(csbcpb->cpb.aes_ecb.key)); gcm_empty()
285 NX_CPB_FDM(csbcpb) |= NX_FDM_ENDE_ENCRYPT; gcm_empty()
287 NX_CPB_FDM(csbcpb) &= ~NX_FDM_ENDE_ENCRYPT; gcm_empty()
315 memcpy(csbcpb->cpb.aes_gcm.out_pat_or_mac, out, gcm_empty()
319 csbcpb->cpb.hdr.mode = NX_MODE_AES_GCM; gcm_empty()
325 memset(csbcpb->cpb.aes_ecb.key, 0, sizeof(csbcpb->cpb.aes_ecb.key)); gcm_empty()
334 struct nx_csbcpb *csbcpb = nx_ctx->csbcpb; gcm_aes_nx_crypt() local
359 csbcpb->cpb.aes_gcm.bit_length_aad = req->assoclen * 8; gcm_aes_nx_crypt()
361 rc = nx_gca(nx_ctx, req, csbcpb->cpb.aes_gcm.in_pat_or_aad); gcm_aes_nx_crypt()
367 NX_CPB_FDM(csbcpb) &= ~NX_FDM_CONTINUATION; gcm_aes_nx_crypt()
369 NX_CPB_FDM(csbcpb) |= NX_FDM_ENDE_ENCRYPT; gcm_aes_nx_crypt()
371 NX_CPB_FDM(csbcpb) &= ~NX_FDM_ENDE_ENCRYPT; gcm_aes_nx_crypt()
378 csbcpb->cpb.aes_gcm.bit_length_data = nbytes * 8; gcm_aes_nx_crypt()
382 csbcpb->cpb.aes_gcm.iv_or_cnt); gcm_aes_nx_crypt()
388 NX_CPB_FDM(csbcpb) |= NX_FDM_INTERMEDIATE; gcm_aes_nx_crypt()
390 NX_CPB_FDM(csbcpb) &= ~NX_FDM_INTERMEDIATE; gcm_aes_nx_crypt()
398 memcpy(desc.info, csbcpb->cpb.aes_gcm.out_cnt, AES_BLOCK_SIZE); gcm_aes_nx_crypt()
399 memcpy(csbcpb->cpb.aes_gcm.in_pat_or_aad, gcm_aes_nx_crypt()
400 csbcpb->cpb.aes_gcm.out_pat_or_mac, AES_BLOCK_SIZE); gcm_aes_nx_crypt()
401 memcpy(csbcpb->cpb.aes_gcm.in_s0, gcm_aes_nx_crypt()
402 csbcpb->cpb.aes_gcm.out_s0, AES_BLOCK_SIZE); gcm_aes_nx_crypt()
404 NX_CPB_FDM(csbcpb) |= NX_FDM_CONTINUATION; gcm_aes_nx_crypt()
407 atomic64_add(csbcpb->csb.processed_byte_count, gcm_aes_nx_crypt()
416 scatterwalk_map_and_copy(csbcpb->cpb.aes_gcm.out_pat_or_mac, gcm_aes_nx_crypt()
422 u8 *otag = csbcpb->cpb.aes_gcm.out_pat_or_mac; gcm_aes_nx_crypt()
H A Dnx-aes-ecb.c38 struct nx_csbcpb *csbcpb = (struct nx_csbcpb *)nx_ctx->csbcpb; ecb_aes_nx_set_key() local
44 NX_CPB_SET_KEY_SIZE(csbcpb, NX_KS_AES_128); ecb_aes_nx_set_key()
48 NX_CPB_SET_KEY_SIZE(csbcpb, NX_KS_AES_192); ecb_aes_nx_set_key()
52 NX_CPB_SET_KEY_SIZE(csbcpb, NX_KS_AES_256); ecb_aes_nx_set_key()
59 csbcpb->cpb.hdr.mode = NX_MODE_AES_ECB; ecb_aes_nx_set_key()
60 memcpy(csbcpb->cpb.aes_ecb.key, in_key, key_len); ecb_aes_nx_set_key()
72 struct nx_csbcpb *csbcpb = nx_ctx->csbcpb; ecb_aes_nx_crypt() local
80 NX_CPB_FDM(csbcpb) |= NX_FDM_ENDE_ENCRYPT; ecb_aes_nx_crypt()
82 NX_CPB_FDM(csbcpb) &= ~NX_FDM_ENDE_ENCRYPT; ecb_aes_nx_crypt()
103 atomic64_add(csbcpb->csb.processed_byte_count, ecb_aes_nx_crypt()
H A Dnx-aes-xcbc.c45 struct nx_csbcpb *csbcpb = nx_ctx->csbcpb; nx_xcbc_set_key() local
55 memcpy(csbcpb->cpb.aes_xcbc.key, in_key, key_len); nx_xcbc_set_key()
74 struct nx_csbcpb *csbcpb = nx_ctx->csbcpb; nx_xcbc_empty() local
82 csbcpb->cpb.hdr.mode = NX_MODE_AES_ECB; nx_xcbc_empty()
83 memcpy(key, csbcpb->cpb.aes_xcbc.key, AES_BLOCK_SIZE); nx_xcbc_empty()
84 memcpy(csbcpb->cpb.aes_ecb.key, key, AES_BLOCK_SIZE); nx_xcbc_empty()
85 NX_CPB_FDM(csbcpb) |= NX_FDM_ENDE_ENCRYPT; nx_xcbc_empty()
120 memcpy(csbcpb->cpb.aes_ecb.key, keys[0], AES_BLOCK_SIZE); nx_xcbc_empty()
145 csbcpb->cpb.hdr.mode = NX_MODE_AES_XCBC_MAC; nx_xcbc_empty()
146 memcpy(csbcpb->cpb.aes_xcbc.key, key, AES_BLOCK_SIZE); nx_xcbc_empty()
147 NX_CPB_FDM(csbcpb) &= ~NX_FDM_ENDE_ENCRYPT; nx_xcbc_empty()
155 struct nx_csbcpb *csbcpb = nx_ctx->csbcpb; nx_crypto_ctx_aes_xcbc_init2() local
164 NX_CPB_SET_KEY_SIZE(csbcpb, NX_KS_AES_128); nx_crypto_ctx_aes_xcbc_init2()
165 csbcpb->cpb.hdr.mode = NX_MODE_AES_XCBC_MAC; nx_crypto_ctx_aes_xcbc_init2()
185 struct nx_csbcpb *csbcpb = nx_ctx->csbcpb; nx_xcbc_update() local
270 if (NX_CPB_FDM(csbcpb) & NX_FDM_CONTINUATION) { nx_xcbc_update()
271 memcpy(csbcpb->cpb.aes_xcbc.cv, nx_xcbc_update()
272 csbcpb->cpb.aes_xcbc.out_cv_mac, nx_xcbc_update()
276 NX_CPB_FDM(csbcpb) |= NX_FDM_INTERMEDIATE; nx_xcbc_update()
290 NX_CPB_FDM(csbcpb) |= NX_FDM_CONTINUATION; nx_xcbc_update()
311 struct nx_csbcpb *csbcpb = nx_ctx->csbcpb; nx_xcbc_final() local
319 if (NX_CPB_FDM(csbcpb) & NX_FDM_CONTINUATION) { nx_xcbc_final()
322 memcpy(csbcpb->cpb.aes_xcbc.cv, nx_xcbc_final()
323 csbcpb->cpb.aes_xcbc.out_cv_mac, AES_BLOCK_SIZE); nx_xcbc_final()
336 NX_CPB_FDM(csbcpb) &= ~NX_FDM_INTERMEDIATE; nx_xcbc_final()
371 memcpy(out, csbcpb->cpb.aes_xcbc.out_cv_mac, AES_BLOCK_SIZE); nx_xcbc_final()
H A Dnx-aes-ccm.c40 struct nx_csbcpb *csbcpb = nx_ctx->csbcpb; ccm_aes_nx_set_key() local
47 NX_CPB_SET_KEY_SIZE(csbcpb, NX_KS_AES_128); ccm_aes_nx_set_key()
55 csbcpb->cpb.hdr.mode = NX_MODE_AES_CCM; ccm_aes_nx_set_key()
56 memcpy(csbcpb->cpb.aes_ccm.key, in_key, key_len); ccm_aes_nx_set_key()
204 b0 = nx_ctx->csbcpb->cpb.aes_ccm.in_pat_or_b0; generate_pat()
207 * operation on 2 AES blocks, B0 (stored in the csbcpb) and B1, generate_pat()
209 b0 = nx_ctx->csbcpb->cpb.aes_ccm.in_pat_or_b0; generate_pat()
272 NX_CPB_FDM(nx_ctx->csbcpb) |= NX_FDM_ENDE_ENCRYPT; generate_pat()
273 NX_CPB_FDM(nx_ctx->csbcpb) |= NX_FDM_INTERMEDIATE; generate_pat()
275 result = nx_ctx->csbcpb->cpb.aes_ccm.out_pat_or_mac; generate_pat()
349 struct nx_csbcpb *csbcpb = nx_ctx->csbcpb; ccm_nx_decrypt() local
367 csbcpb->cpb.aes_ccm.in_pat_or_b0); ccm_nx_decrypt()
379 NX_CPB_FDM(csbcpb) |= NX_FDM_INTERMEDIATE; ccm_nx_decrypt()
381 NX_CPB_FDM(csbcpb) &= ~NX_FDM_INTERMEDIATE; ccm_nx_decrypt()
383 NX_CPB_FDM(nx_ctx->csbcpb) &= ~NX_FDM_ENDE_ENCRYPT; ccm_nx_decrypt()
387 csbcpb->cpb.aes_ccm.iv_or_ctr); ccm_nx_decrypt()
399 memcpy(desc->info, csbcpb->cpb.aes_ccm.out_ctr, AES_BLOCK_SIZE); ccm_nx_decrypt()
400 memcpy(csbcpb->cpb.aes_ccm.in_pat_or_b0, ccm_nx_decrypt()
401 csbcpb->cpb.aes_ccm.out_pat_or_mac, AES_BLOCK_SIZE); ccm_nx_decrypt()
402 memcpy(csbcpb->cpb.aes_ccm.in_s0, ccm_nx_decrypt()
403 csbcpb->cpb.aes_ccm.out_s0, AES_BLOCK_SIZE); ccm_nx_decrypt()
405 NX_CPB_FDM(csbcpb) |= NX_FDM_CONTINUATION; ccm_nx_decrypt()
409 atomic64_add(csbcpb->csb.processed_byte_count, ccm_nx_decrypt()
415 rc = memcmp(csbcpb->cpb.aes_ccm.out_pat_or_mac, priv->oauth_tag, ccm_nx_decrypt()
426 struct nx_csbcpb *csbcpb = nx_ctx->csbcpb; ccm_nx_encrypt() local
436 csbcpb->cpb.aes_ccm.in_pat_or_b0); ccm_nx_encrypt()
447 NX_CPB_FDM(csbcpb) |= NX_FDM_INTERMEDIATE; ccm_nx_encrypt()
449 NX_CPB_FDM(csbcpb) &= ~NX_FDM_INTERMEDIATE; ccm_nx_encrypt()
451 NX_CPB_FDM(csbcpb) |= NX_FDM_ENDE_ENCRYPT; ccm_nx_encrypt()
455 csbcpb->cpb.aes_ccm.iv_or_ctr); ccm_nx_encrypt()
467 memcpy(desc->info, csbcpb->cpb.aes_ccm.out_ctr, AES_BLOCK_SIZE); ccm_nx_encrypt()
468 memcpy(csbcpb->cpb.aes_ccm.in_pat_or_b0, ccm_nx_encrypt()
469 csbcpb->cpb.aes_ccm.out_pat_or_mac, AES_BLOCK_SIZE); ccm_nx_encrypt()
470 memcpy(csbcpb->cpb.aes_ccm.in_s0, ccm_nx_encrypt()
471 csbcpb->cpb.aes_ccm.out_s0, AES_BLOCK_SIZE); ccm_nx_encrypt()
473 NX_CPB_FDM(csbcpb) |= NX_FDM_CONTINUATION; ccm_nx_encrypt()
477 atomic64_add(csbcpb->csb.processed_byte_count, ccm_nx_encrypt()
485 scatterwalk_map_and_copy(csbcpb->cpb.aes_ccm.out_pat_or_mac, ccm_nx_encrypt()
H A Dnx-sha512.c44 NX_CPB_SET_DIGEST_SIZE(nx_ctx->csbcpb, NX_DS_SHA512); nx_crypto_ctx_sha512_init()
73 struct nx_csbcpb *csbcpb = (struct nx_csbcpb *)nx_ctx->csbcpb; nx_sha512_update() local
95 memcpy(csbcpb->cpb.sha512.message_digest, sctx->state, SHA512_DIGEST_SIZE); nx_sha512_update()
96 NX_CPB_FDM(csbcpb) |= NX_FDM_INTERMEDIATE; nx_sha512_update()
97 NX_CPB_FDM(csbcpb) |= NX_FDM_CONTINUATION; nx_sha512_update()
160 memcpy(csbcpb->cpb.sha512.input_partial_digest, nx_sha512_update()
161 csbcpb->cpb.sha512.message_digest, nx_sha512_update()
186 memcpy(sctx->state, csbcpb->cpb.sha512.message_digest, SHA512_DIGEST_SIZE); nx_sha512_update()
196 struct nx_csbcpb *csbcpb = (struct nx_csbcpb *)nx_ctx->csbcpb; nx_sha512_final() local
216 memcpy(csbcpb->cpb.sha512.input_partial_digest, sctx->state, nx_sha512_final()
218 NX_CPB_FDM(csbcpb) &= ~NX_FDM_INTERMEDIATE; nx_sha512_final()
219 NX_CPB_FDM(csbcpb) |= NX_FDM_CONTINUATION; nx_sha512_final()
221 NX_CPB_FDM(csbcpb) &= ~NX_FDM_INTERMEDIATE; nx_sha512_final()
222 NX_CPB_FDM(csbcpb) &= ~NX_FDM_CONTINUATION; nx_sha512_final()
225 NX_CPB_FDM(csbcpb) &= ~NX_FDM_INTERMEDIATE; nx_sha512_final()
229 csbcpb->cpb.sha512.message_bit_length_lo = count0; nx_sha512_final()
260 memcpy(out, csbcpb->cpb.sha512.message_digest, SHA512_DIGEST_SIZE); nx_sha512_final()
H A Dnx-aes-ctr.c39 struct nx_csbcpb *csbcpb = nx_ctx->csbcpb; ctr_aes_nx_set_key() local
45 NX_CPB_SET_KEY_SIZE(csbcpb, NX_KS_AES_128); ctr_aes_nx_set_key()
49 NX_CPB_SET_KEY_SIZE(csbcpb, NX_KS_AES_192); ctr_aes_nx_set_key()
53 NX_CPB_SET_KEY_SIZE(csbcpb, NX_KS_AES_256); ctr_aes_nx_set_key()
60 csbcpb->cpb.hdr.mode = NX_MODE_AES_CTR; ctr_aes_nx_set_key()
61 memcpy(csbcpb->cpb.aes_ctr.key, in_key, key_len); ctr_aes_nx_set_key()
90 struct nx_csbcpb *csbcpb = nx_ctx->csbcpb; ctr_aes_nx_crypt() local
101 processed, csbcpb->cpb.aes_ctr.iv); ctr_aes_nx_crypt()
115 memcpy(desc->info, csbcpb->cpb.aes_cbc.cv, AES_BLOCK_SIZE); ctr_aes_nx_crypt()
118 atomic64_add(csbcpb->csb.processed_byte_count, ctr_aes_nx_crypt()
H A Dnx-sha256.c45 NX_CPB_SET_DIGEST_SIZE(nx_ctx->csbcpb, NX_DS_SHA256); nx_crypto_ctx_sha256_init()
73 struct nx_csbcpb *csbcpb = (struct nx_csbcpb *)nx_ctx->csbcpb; nx_sha256_update() local
95 memcpy(csbcpb->cpb.sha256.message_digest, sctx->state, SHA256_DIGEST_SIZE); nx_sha256_update()
96 NX_CPB_FDM(csbcpb) |= NX_FDM_INTERMEDIATE; nx_sha256_update()
97 NX_CPB_FDM(csbcpb) |= NX_FDM_CONTINUATION; nx_sha256_update()
156 memcpy(csbcpb->cpb.sha256.input_partial_digest, nx_sha256_update()
157 csbcpb->cpb.sha256.message_digest, nx_sha256_update()
183 memcpy(sctx->state, csbcpb->cpb.sha256.message_digest, SHA256_DIGEST_SIZE); nx_sha256_update()
193 struct nx_csbcpb *csbcpb = (struct nx_csbcpb *)nx_ctx->csbcpb; nx_sha256_final() local
212 memcpy(csbcpb->cpb.sha256.input_partial_digest, sctx->state, SHA256_DIGEST_SIZE); nx_sha256_final()
213 NX_CPB_FDM(csbcpb) &= ~NX_FDM_INTERMEDIATE; nx_sha256_final()
214 NX_CPB_FDM(csbcpb) |= NX_FDM_CONTINUATION; nx_sha256_final()
216 NX_CPB_FDM(csbcpb) &= ~NX_FDM_INTERMEDIATE; nx_sha256_final()
217 NX_CPB_FDM(csbcpb) &= ~NX_FDM_CONTINUATION; nx_sha256_final()
220 csbcpb->cpb.sha256.message_bit_length = (u64) (sctx->count * 8); nx_sha256_final()
254 memcpy(out, csbcpb->cpb.sha256.message_digest, SHA256_DIGEST_SIZE); nx_sha256_final()
H A Dnx-842.c61 /* Check the valid bit within the csbcpb valid field */
64 /* CE macros operate on the completion_extension field bits in the csbcpb.
232 struct nx_csbcpb csbcpb; member in struct:nx842_workmem::__anon3815::__anon3816
336 struct nx_csbcpb *csbcpb; nx842_compress() local
380 csbcpb = &workmem->csbcpb; nx842_compress()
381 memset(csbcpb, 0, sizeof(*csbcpb)); nx842_compress()
382 op.csbcpb = nx842_get_pa(csbcpb); nx842_compress()
448 ret = nx842_validate_result(dev, &csbcpb->csb); nx842_compress()
472 size = csbcpb->csb.processed_byte_count; nx842_compress()
536 struct nx_csbcpb *csbcpb; nx842_decompress() local
575 csbcpb = &workmem->csbcpb; nx842_decompress()
576 memset(csbcpb, 0, sizeof(*csbcpb)); nx842_decompress()
577 op.csbcpb = nx842_get_pa(csbcpb); nx842_decompress()
646 ret = nx842_validate_result(dev, &csbcpb->csb); nx842_decompress()
654 outbuf += csbcpb->csb.processed_byte_count; nx842_decompress()
H A Dnx.c322 nx_ctx->csbcpb->csb.valid |= NX_CSB_VALID_BIT; nx_ctx_init()
325 nx_ctx->op.csbcpb = __pa(nx_ctx->csbcpb); nx_ctx_init()
333 nx_ctx->op_aead.csbcpb = __pa(nx_ctx->csbcpb_aead); nx_ctx_init()
615 /* the csbcpb and scatterlists must be 4K aligned pages */ nx_crypto_ctx_init()
616 nx_ctx->csbcpb = (struct nx_csbcpb *)(round_up((u64)nx_ctx->kmem, nx_crypto_ctx_init()
618 nx_ctx->in_sg = (struct nx_sg *)((u8 *)nx_ctx->csbcpb + NX_PAGE_SIZE); nx_crypto_ctx_init()
692 nx_ctx->csbcpb = NULL; nx_crypto_ctx_exit()
H A Dnx.h131 struct nx_csbcpb *csbcpb; /* aligned page given to phyp @ hcall time */ member in struct:nx_crypto_ctx
133 struct nx_csbcpb *csbcpb_aead; /* secondary csbcpb used by AEAD algs */
/linux-4.1.27/arch/powerpc/include/asm/
H A Dvio.h67 * @csbcpb: Logical real address of the 4k naturally-aligned storage block
78 u64 csbcpb; member in struct:vio_pfo_op
/linux-4.1.27/arch/powerpc/kernel/
H A Dvio.c1128 op->outlen, op->csbcpb); vio_h_cop_sync()

Completed in 240 milliseconds