]> git.ipfire.org Git - thirdparty/kernel/linux.git/blobdiff - drivers/crypto/talitos.c
crypto: talitos - stop using crypto_ahash::init
[thirdparty/kernel/linux.git] / drivers / crypto / talitos.c
index dd00a92bc7b839338f64c82914cf7c805ce3c90e..511ddcb0efd4b4b513e4025aa7f51a6c9826b1bc 100644 (file)
@@ -2119,13 +2119,14 @@ static int ahash_finup(struct ahash_request *areq)
 
 static int ahash_digest(struct ahash_request *areq)
 {
-       struct talitos_ahash_req_ctx *req_ctx = ahash_request_ctx(areq);
-       struct crypto_ahash *ahash = crypto_ahash_reqtfm(areq);
-
-       ahash->init(areq);
-       req_ctx->last = 1;
+       ahash_init(areq);
+       return ahash_finup(areq);
+}
 
-       return ahash_process_req(areq, areq->nbytes);
+static int ahash_digest_sha224_swinit(struct ahash_request *areq)
+{
+       ahash_init_sha224_swinit(areq);
+       return ahash_finup(areq);
 }
 
 static int ahash_export(struct ahash_request *areq, void *out)
@@ -3240,6 +3241,8 @@ static struct talitos_crypto_alg *talitos_alg_alloc(struct device *dev,
                    (!strcmp(alg->cra_name, "sha224") ||
                     !strcmp(alg->cra_name, "hmac(sha224)"))) {
                        t_alg->algt.alg.hash.init = ahash_init_sha224_swinit;
+                       t_alg->algt.alg.hash.digest =
+                               ahash_digest_sha224_swinit;
                        t_alg->algt.desc_hdr_template =
                                        DESC_HDR_TYPE_COMMON_NONSNOOP_NO_AFEU |
                                        DESC_HDR_SEL0_MDEUA |