Lines Matching refs:rctx
59 struct starfive_cryp_request_ctx *rctx = ctx->rctx;
67 rctx->csr.hash.hmac = 1;
68 rctx->csr.hash.key_flag = 1;
70 writel(rctx->csr.hash.v, cryp->base + STARFIVE_HASH_SHACSR);
90 struct starfive_cryp_request_ctx *rctx = ctx->rctx;
96 dma_unmap_sg(cryp->dev, rctx->in_sg, rctx->in_sg_len, DMA_TO_DEVICE);
115 struct starfive_cryp_request_ctx *rctx = ctx->rctx;
122 if (!rctx->total) {
127 writel(rctx->total, cryp->base + STARFIVE_DMA_IN_LEN_OFFSET);
129 total_len = rctx->total;
131 sg_dma_len(rctx->in_sg) = total_len;
139 ret = dma_map_sg(cryp->dev, rctx->in_sg, rctx->in_sg_len, DMA_TO_DEVICE);
152 in_desc = dmaengine_prep_slave_sg(cryp->tx, rctx->in_sg,
170 struct starfive_cryp_request_ctx *rctx = ctx->rctx;
174 rctx->csr.hash.v = 0;
175 rctx->csr.hash.reset = 1;
176 writel(rctx->csr.hash.v, cryp->base + STARFIVE_HASH_SHACSR);
181 rctx->csr.hash.v = 0;
182 rctx->csr.hash.mode = ctx->hash_mode;
183 rctx->csr.hash.ie = 1;
190 rctx->csr.hash.start = 1;
191 rctx->csr.hash.firstb = 1;
192 writel(rctx->csr.hash.v, cryp->base + STARFIVE_HASH_SHACSR);
200 struct starfive_cryp_request_ctx *rctx = ahash_request_ctx(req);
208 mlen = rctx->digsize / sizeof(u32);
274 struct starfive_cryp_request_ctx *rctx = ahash_request_ctx(req);
277 ahash_request_set_tfm(&rctx->ahash_fbk_req, ctx->ahash_fbk);
278 ahash_request_set_callback(&rctx->ahash_fbk_req,
282 ahash_request_set_crypt(&rctx->ahash_fbk_req, req->src,
285 return crypto_ahash_init(&rctx->ahash_fbk_req);
290 struct starfive_cryp_request_ctx *rctx = ahash_request_ctx(req);
294 ahash_request_set_tfm(&rctx->ahash_fbk_req, ctx->ahash_fbk);
295 ahash_request_set_callback(&rctx->ahash_fbk_req,
299 ahash_request_set_crypt(&rctx->ahash_fbk_req, req->src,
302 return crypto_ahash_update(&rctx->ahash_fbk_req);
307 struct starfive_cryp_request_ctx *rctx = ahash_request_ctx(req);
311 ahash_request_set_tfm(&rctx->ahash_fbk_req, ctx->ahash_fbk);
312 ahash_request_set_callback(&rctx->ahash_fbk_req,
316 ahash_request_set_crypt(&rctx->ahash_fbk_req, req->src,
319 return crypto_ahash_final(&rctx->ahash_fbk_req);
324 struct starfive_cryp_request_ctx *rctx = ahash_request_ctx(req);
328 ahash_request_set_tfm(&rctx->ahash_fbk_req, ctx->ahash_fbk);
329 ahash_request_set_callback(&rctx->ahash_fbk_req,
333 ahash_request_set_crypt(&rctx->ahash_fbk_req, req->src,
336 return crypto_ahash_finup(&rctx->ahash_fbk_req);
341 struct starfive_cryp_request_ctx *rctx = ahash_request_ctx(req);
345 ahash_request_set_tfm(&rctx->ahash_fbk_req, ctx->ahash_fbk);
346 ahash_request_set_callback(&rctx->ahash_fbk_req, req->base.flags,
349 ahash_request_set_crypt(&rctx->ahash_fbk_req, req->src,
352 return crypto_ahash_digest(&rctx->ahash_fbk_req);
359 struct starfive_cryp_request_ctx *rctx = ahash_request_ctx(req);
362 memset(rctx, 0, sizeof(struct starfive_cryp_request_ctx));
365 rctx->total = req->nbytes;
366 rctx->in_sg = req->src;
367 rctx->blksize = crypto_tfm_alg_blocksize(crypto_ahash_tfm(tfm));
368 rctx->digsize = crypto_ahash_digestsize(tfm);
369 rctx->in_sg_len = sg_nents_for_len(rctx->in_sg, rctx->total);
370 ctx->rctx = rctx;
372 if (starfive_hash_check_aligned(rctx->in_sg, rctx->total, rctx->blksize))
380 struct starfive_cryp_request_ctx *rctx = ahash_request_ctx(req);
384 ahash_request_set_tfm(&rctx->ahash_fbk_req, ctx->ahash_fbk);
385 ahash_request_set_callback(&rctx->ahash_fbk_req,
389 return crypto_ahash_export(&rctx->ahash_fbk_req, out);
394 struct starfive_cryp_request_ctx *rctx = ahash_request_ctx(req);
398 ahash_request_set_tfm(&rctx->ahash_fbk_req, ctx->ahash_fbk);
399 ahash_request_set_callback(&rctx->ahash_fbk_req,
403 return crypto_ahash_import(&rctx->ahash_fbk_req, in);