Lines Matching refs:req

171 	struct ahash_request	*req;
226 struct crypto_ahash *tfm = crypto_ahash_reqtfm(hdev->req);
253 struct stm32_hash_request_ctx *rctx = ahash_request_ctx(hdev->req);
254 struct crypto_ahash *tfm = crypto_ahash_reqtfm(hdev->req);
381 struct stm32_hash_request_ctx *rctx = ahash_request_ctx(hdev->req);
479 struct stm32_hash_request_ctx *rctx = ahash_request_ctx(hdev->req);
480 struct crypto_ahash *tfm = crypto_ahash_reqtfm(hdev->req);
544 struct stm32_hash_request_ctx *rctx = ahash_request_ctx(hdev->req);
550 rctx->sg = hdev->req->src;
551 rctx->total = hdev->req->nbytes;
655 static bool stm32_hash_dma_aligned_data(struct ahash_request *req)
658 struct stm32_hash_ctx *ctx = crypto_ahash_ctx(crypto_ahash_reqtfm(req));
662 if (req->nbytes <= HASH_DMA_THRESHOLD)
665 if (sg_nents(req->src) > 1) {
668 for_each_sg(req->src, sg, sg_nents(req->src), i) {
675 if (req->src->offset % 4)
681 static int stm32_hash_init(struct ahash_request *req)
683 struct crypto_ahash *tfm = crypto_ahash_reqtfm(req);
685 struct stm32_hash_request_ctx *rctx = ahash_request_ctx(req);
733 struct ahash_request *req = hdev->req;
734 struct stm32_hash_request_ctx *rctx = ahash_request_ctx(req);
749 static void stm32_hash_copy_hash(struct ahash_request *req)
751 struct stm32_hash_request_ctx *rctx = ahash_request_ctx(req);
777 static int stm32_hash_finish(struct ahash_request *req)
779 struct stm32_hash_request_ctx *rctx = ahash_request_ctx(req);
781 if (!req->result)
784 memcpy(req->result, rctx->digest, rctx->digcnt);
789 static void stm32_hash_finish_req(struct ahash_request *req, int err)
791 struct stm32_hash_request_ctx *rctx = ahash_request_ctx(req);
795 stm32_hash_copy_hash(req);
796 err = stm32_hash_finish(req);
809 crypto_finalize_hash_request(hdev->engine, req, err);
832 struct ahash_request *req)
834 return crypto_transfer_hash_request_to_engine(hdev->engine, req);
839 struct ahash_request *req = container_of(areq, struct ahash_request,
841 struct stm32_hash_ctx *ctx = crypto_ahash_ctx(crypto_ahash_reqtfm(req));
848 hdev->req = req;
850 rctx = ahash_request_ctx(req);
852 dev_dbg(hdev->dev, "processing new req, op: %lu, nbytes %d\n",
853 rctx->op, req->nbytes);
860 struct ahash_request *req = container_of(areq, struct ahash_request,
862 struct stm32_hash_ctx *ctx = crypto_ahash_ctx(crypto_ahash_reqtfm(req));
870 hdev->req = req;
872 rctx = ahash_request_ctx(req);
881 stm32_hash_finish_req(req, err);
886 static int stm32_hash_enqueue(struct ahash_request *req, unsigned int op)
888 struct stm32_hash_request_ctx *rctx = ahash_request_ctx(req);
889 struct stm32_hash_ctx *ctx = crypto_tfm_ctx(req->base.tfm);
894 return stm32_hash_handle_queue(hdev, req);
897 static int stm32_hash_update(struct ahash_request *req)
899 struct stm32_hash_request_ctx *rctx = ahash_request_ctx(req);
901 if (!req->nbytes || !(rctx->flags & HASH_FLAGS_CPU))
904 rctx->total = req->nbytes;
905 rctx->sg = req->src;
913 return stm32_hash_enqueue(req, HASH_OP_UPDATE);
916 static int stm32_hash_final(struct ahash_request *req)
918 struct stm32_hash_request_ctx *rctx = ahash_request_ctx(req);
922 return stm32_hash_enqueue(req, HASH_OP_FINAL);
925 static int stm32_hash_finup(struct ahash_request *req)
927 struct stm32_hash_request_ctx *rctx = ahash_request_ctx(req);
928 struct stm32_hash_ctx *ctx = crypto_ahash_ctx(crypto_ahash_reqtfm(req));
934 if (hdev->dma_lch && stm32_hash_dma_aligned_data(req))
937 err1 = stm32_hash_update(req);
946 err2 = stm32_hash_final(req);
951 static int stm32_hash_digest(struct ahash_request *req)
953 return stm32_hash_init(req) ?: stm32_hash_finup(req);
956 static int stm32_hash_export(struct ahash_request *req, void *out)
958 struct stm32_hash_request_ctx *rctx = ahash_request_ctx(req);
959 struct stm32_hash_ctx *ctx = crypto_ahash_ctx(crypto_ahash_reqtfm(req));
989 static int stm32_hash_import(struct ahash_request *req, const void *in)
991 struct stm32_hash_request_ctx *rctx = ahash_request_ctx(req);
992 struct stm32_hash_ctx *ctx = crypto_ahash_ctx(crypto_ahash_reqtfm(req));
1100 stm32_hash_finish_req(hdev->req, 0);