Lines Matching refs:base
24 struct safexcel_context base;
112 struct safexcel_crypto_priv *priv = ctx->base.priv;
125 memcpy(ctx->base.ctxr->data, &ctx->base.ipad, ctx->key_sz);
127 memcpy(ctx->base.ctxr->data, req->state, req->state_sz);
162 memcpy(ctx->base.ctxr->data, req->state, req->state_sz);
198 ctx->base.ctxr->data[req->state_sz >> 2] =
206 memcpy(ctx->base.ctxr->data + (req->state_sz >> 2),
207 &ctx->base.opad, req->state_sz);
276 memcpy(sreq->state, &ctx->base.opad, sreq->digest_sz);
284 ctx->base.needs_inv = true;
317 struct safexcel_crypto_priv *priv = ctx->base.priv;
382 u32 *ipad = ctx->base.ipad.word;
409 len, ctx->base.ctxr_dma,
449 len, ctx->base.ctxr_dma, &dmmy);
487 safexcel_rdr_req_set(priv, ring, rdesc, &areq->base);
541 if (ctx->base.exit_inv) {
542 dma_pool_free(priv->context_pool, ctx->base.ctxr,
543 ctx->base.ctxr_dma);
550 ctx->base.ring = ring;
596 ret = safexcel_invalidate_cache(async, ctx->base.priv,
597 ctx->base.ctxr_dma, ring);
625 struct safexcel_crypto_priv *priv = ctx->base.priv;
629 int ring = ctx->base.ring;
640 ctx = crypto_tfm_ctx(req->base.tfm);
641 ctx->base.exit_inv = true;
645 crypto_enqueue_request(&priv->ring[ring].queue, &req->base);
693 struct safexcel_crypto_priv *priv = ctx->base.priv;
698 if (ctx->base.ctxr) {
699 if (priv->flags & EIP197_TRC_CACHE && !ctx->base.needs_inv &&
703 memcmp(ctx->base.ctxr->data, req->state, req->state_sz) ||
706 memcmp(ctx->base.ctxr->data + (req->state_sz>>2),
707 &ctx->base.opad, req->state_sz))))
714 ctx->base.needs_inv = true;
716 if (ctx->base.needs_inv) {
717 ctx->base.needs_inv = false;
721 ctx->base.ring = safexcel_select_ring(priv);
722 ctx->base.ctxr = dma_pool_zalloc(priv->context_pool,
723 EIP197_GFP_FLAGS(areq->base),
724 &ctx->base.ctxr_dma);
725 if (!ctx->base.ctxr)
730 ring = ctx->base.ring;
733 ret = crypto_enqueue_request(&priv->ring[ring].queue, &areq->base);
808 memcpy(areq->result, &ctx->base.ipad, sizeof(u32));
824 result[i] = swab32(ctx->base.ipad.word[i + 4]);
925 ctx->base.priv = tmpl->priv;
926 ctx->base.send = safexcel_ahash_send;
927 ctx->base.handle_result = safexcel_handle_result;
964 struct safexcel_crypto_priv *priv = ctx->base.priv;
968 if (!ctx->base.ctxr)
976 dma_pool_free(priv->context_pool, ctx->base.ctxr,
977 ctx->base.ctxr_dma);
995 .base = {
1020 memcpy(req->state, &ctx->base.ipad, SHA1_DIGEST_SIZE);
1167 int safexcel_hmac_setkey(struct safexcel_context *base, const u8 *key,
1171 struct safexcel_crypto_priv *priv = base->priv;
1179 if (priv->flags & EIP197_TRC_CACHE && base->ctxr &&
1180 (memcmp(&base->ipad, istate.state, state_sz) ||
1181 memcmp(&base->opad, ostate.state, state_sz)))
1182 base->needs_inv = true;
1184 memcpy(&base->ipad, &istate.state, state_sz);
1185 memcpy(&base->opad, &ostate.state, state_sz);
1196 return safexcel_hmac_setkey(&ctx->base, key, keylen, alg, state_sz);
1221 .base = {
1278 .base = {
1335 .base = {
1367 memcpy(req->state, &ctx->base.ipad, SHA256_DIGEST_SIZE);
1407 .base = {
1439 memcpy(req->state, &ctx->base.ipad, SHA256_DIGEST_SIZE);
1479 .base = {
1536 .base = {
1593 .base = {
1625 memcpy(req->state, &ctx->base.ipad, SHA512_DIGEST_SIZE);
1665 .base = {
1697 memcpy(req->state, &ctx->base.ipad, SHA512_DIGEST_SIZE);
1737 .base = {
1794 .base = {
1819 memcpy(req->state, &ctx->base.ipad, MD5_DIGEST_SIZE);
1867 .base = {
1890 memset(&ctx->base.ipad, 0, sizeof(u32));
1902 req->state[0] = cpu_to_le32(~ctx->base.ipad.word[0]);
1924 memcpy(&ctx->base.ipad, key, sizeof(u32));
1948 .base = {
1974 memcpy(req->state, &ctx->base.ipad, ctx->key_sz);
1999 memset(&ctx->base.ipad, 0, 2 * AES_BLOCK_SIZE);
2001 ctx->base.ipad.be[i + 8] = cpu_to_be32(aes.key_enc[i]);
2039 .base = {
2075 ctx->base.ipad.word[i] = swab32(key_tmp[i]);
2122 .base = {
2154 ctx->base.ipad.word[i + 8] = swab32(ctx->aes->key_enc[i]);
2177 ctx->base.ipad.be[i] = cpu_to_be32(((u32 *)consts)[i]);
2209 .base = {
2266 .base = {
2298 memcpy(req->state, &ctx->base.ipad, SM3_DIGEST_SIZE);
2338 .base = {
2382 ahash_request_set_callback(subreq, req->base.flags,
2383 req->base.complete, req->base.data);
2391 memcpy(key, &ctx->base.ipad,
2395 &ctx->base.opad,
2532 .base = {
2590 .base = {
2648 .base = {
2706 .base = {
2769 ctx->base.ipad.byte);
2778 memmove(&ctx->base.opad,
2779 ctx->base.ipad.byte +
2789 memcpy(&ctx->base.ipad, key, keylen);
2791 memcpy(&ctx->base.ipad, key,
2793 memcpy(&ctx->base.opad,
2801 memset(ctx->base.ipad.byte + keylen, 0,
2803 memset(&ctx->base.opad, 0, crypto_ahash_blocksize(tfm) / 2);
2805 memset(ctx->base.opad.byte + keylen -
2824 memcpy(req->state, &ctx->base.ipad, SHA3_224_BLOCK_SIZE / 2);
2869 .base = {
2895 memcpy(req->state, &ctx->base.ipad, SHA3_256_BLOCK_SIZE / 2);
2940 .base = {
2966 memcpy(req->state, &ctx->base.ipad, SHA3_384_BLOCK_SIZE / 2);
3011 .base = {
3037 memcpy(req->state, &ctx->base.ipad, SHA3_512_BLOCK_SIZE / 2);
3081 .base = {