crypto: aspeed - Remove prepare/unprepare request
authorHerbert Xu <herbert@gondor.apana.org.au>
Sun, 13 Aug 2023 06:54:13 +0000 (14:54 +0800)
committerHerbert Xu <herbert@gondor.apana.org.au>
Fri, 18 Aug 2023 09:01:09 +0000 (17:01 +0800)
The callbacks for prepare and unprepare request in crypto_engine
is superfluous.  They can be done directly from do_one_request.

Move the code into do_one_request and remove the unused callbacks.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
drivers/crypto/aspeed/aspeed-acry.c
drivers/crypto/aspeed/aspeed-hace-crypto.c
drivers/crypto/aspeed/aspeed-hace-hash.c

index 470122c..5ae529c 100644 (file)
@@ -590,8 +590,6 @@ static int aspeed_acry_rsa_init_tfm(struct crypto_akcipher *tfm)
        }
 
        ctx->enginectx.op.do_one_request = aspeed_acry_do_request;
-       ctx->enginectx.op.prepare_request = NULL;
-       ctx->enginectx.op.unprepare_request = NULL;
 
        return 0;
 }
index ef73b00..8d6d9ec 100644 (file)
@@ -714,8 +714,6 @@ static int aspeed_crypto_cra_init(struct crypto_skcipher *tfm)
                         crypto_skcipher_reqsize(ctx->fallback_tfm));
 
        ctx->enginectx.op.do_one_request = aspeed_crypto_do_request;
-       ctx->enginectx.op.prepare_request = NULL;
-       ctx->enginectx.op.unprepare_request = NULL;
 
        return 0;
 }
index 9351352..f8c9656 100644 (file)
@@ -565,8 +565,8 @@ static int aspeed_ahash_do_request(struct crypto_engine *engine, void *areq)
        return 0;
 }
 
-static int aspeed_ahash_prepare_request(struct crypto_engine *engine,
-                                       void *areq)
+static void aspeed_ahash_prepare_request(struct crypto_engine *engine,
+                                        void *areq)
 {
        struct ahash_request *req = ahash_request_cast(areq);
        struct crypto_ahash *tfm = crypto_ahash_reqtfm(req);
@@ -581,8 +581,12 @@ static int aspeed_ahash_prepare_request(struct crypto_engine *engine,
                hash_engine->dma_prepare = aspeed_ahash_dma_prepare_sg;
        else
                hash_engine->dma_prepare = aspeed_ahash_dma_prepare;
+}
 
-       return 0;
+static int aspeed_ahash_do_one(struct crypto_engine *engine, void *areq)
+{
+       aspeed_ahash_prepare_request(engine, areq);
+       return aspeed_ahash_do_request(engine, areq);
 }
 
 static int aspeed_sham_update(struct ahash_request *req)
@@ -876,9 +880,7 @@ static int aspeed_sham_cra_init(struct crypto_tfm *tfm)
                }
        }
 
-       tctx->enginectx.op.do_one_request = aspeed_ahash_do_request;
-       tctx->enginectx.op.prepare_request = aspeed_ahash_prepare_request;
-       tctx->enginectx.op.unprepare_request = NULL;
+       tctx->enginectx.op.do_one_request = aspeed_ahash_do_one;
 
        return 0;
 }