From c7a768f57de0ebd7a9149d1dab1dadb9c5409d5f Mon Sep 17 00:00:00 2001 From: Harsh Jain Date: Sat, 20 Dec 2025 21:28:53 +0530 Subject: [PATCH] crypto: xilinx - Remove union from zynqmp_aead_drv_ctx "alg" in zynqmp_aead_drv_ctx is single field union variable. Remove unnecessary alg union from structure. Signed-off-by: Harsh Jain Signed-off-by: Herbert Xu --- drivers/crypto/xilinx/zynqmp-aes-gcm.c | 24 +++++++++++------------- 1 file changed, 11 insertions(+), 13 deletions(-) diff --git a/drivers/crypto/xilinx/zynqmp-aes-gcm.c b/drivers/crypto/xilinx/zynqmp-aes-gcm.c index 6e72d92294106..3ce1319d1a1ab 100644 --- a/drivers/crypto/xilinx/zynqmp-aes-gcm.c +++ b/drivers/crypto/xilinx/zynqmp-aes-gcm.c @@ -43,9 +43,7 @@ enum zynqmp_aead_keysrc { }; struct zynqmp_aead_drv_ctx { - union { - struct aead_engine_alg aead; - } alg; + struct aead_engine_alg aead; struct device *dev; struct crypto_engine *engine; }; @@ -289,7 +287,7 @@ static int zynqmp_aes_aead_encrypt(struct aead_request *req) struct zynqmp_aead_req_ctx *rq_ctx = aead_request_ctx(req); rq_ctx->op = ZYNQMP_AES_ENCRYPT; - drv_ctx = container_of(alg, struct zynqmp_aead_drv_ctx, alg.aead.base); + drv_ctx = container_of(alg, struct zynqmp_aead_drv_ctx, aead.base); return crypto_transfer_aead_request_to_engine(drv_ctx->engine, req); } @@ -302,7 +300,7 @@ static int zynqmp_aes_aead_decrypt(struct aead_request *req) struct zynqmp_aead_req_ctx *rq_ctx = aead_request_ctx(req); rq_ctx->op = ZYNQMP_AES_DECRYPT; - drv_ctx = container_of(alg, struct zynqmp_aead_drv_ctx, alg.aead.base); + drv_ctx = container_of(alg, struct zynqmp_aead_drv_ctx, aead.base); return crypto_transfer_aead_request_to_engine(drv_ctx->engine, req); } @@ -315,16 +313,16 @@ static int zynqmp_aes_aead_init(struct crypto_aead *aead) struct zynqmp_aead_drv_ctx *drv_ctx; struct aead_alg *alg = crypto_aead_alg(aead); - drv_ctx = container_of(alg, struct zynqmp_aead_drv_ctx, alg.aead.base); + drv_ctx = container_of(alg, struct zynqmp_aead_drv_ctx, aead.base); tfm_ctx->dev = drv_ctx->dev; - tfm_ctx->fbk_cipher = crypto_alloc_aead(drv_ctx->alg.aead.base.base.cra_name, + tfm_ctx->fbk_cipher = crypto_alloc_aead(drv_ctx->aead.base.base.cra_name, 0, CRYPTO_ALG_NEED_FALLBACK); if (IS_ERR(tfm_ctx->fbk_cipher)) { pr_err("%s() Error: failed to allocate fallback for %s\n", - __func__, drv_ctx->alg.aead.base.base.cra_name); + __func__, drv_ctx->aead.base.base.cra_name); return PTR_ERR(tfm_ctx->fbk_cipher); } @@ -349,7 +347,7 @@ static void zynqmp_aes_aead_exit(struct crypto_aead *aead) } static struct zynqmp_aead_drv_ctx aes_drv_ctx = { - .alg.aead.base = { + .aead.base = { .setkey = zynqmp_aes_aead_setkey, .setauthsize = zynqmp_aes_aead_setauthsize, .encrypt = zynqmp_aes_aead_encrypt, @@ -372,7 +370,7 @@ static struct zynqmp_aead_drv_ctx aes_drv_ctx = { .cra_module = THIS_MODULE, } }, - .alg.aead.op = { + .aead.op = { .do_one_request = zynqmp_handle_aes_req, }, }; @@ -407,7 +405,7 @@ static int zynqmp_aes_aead_probe(struct platform_device *pdev) goto err_engine; } - err = crypto_engine_register_aead(&aes_drv_ctx.alg.aead); + err = crypto_engine_register_aead(&aes_drv_ctx.aead); if (err < 0) { dev_err(dev, "Failed to register AEAD alg.\n"); goto err_aead; @@ -415,7 +413,7 @@ static int zynqmp_aes_aead_probe(struct platform_device *pdev) return 0; err_aead: - crypto_engine_unregister_aead(&aes_drv_ctx.alg.aead); + crypto_engine_unregister_aead(&aes_drv_ctx.aead); err_engine: if (aes_drv_ctx.engine) @@ -427,7 +425,7 @@ err_engine: static void zynqmp_aes_aead_remove(struct platform_device *pdev) { crypto_engine_exit(aes_drv_ctx.engine); - crypto_engine_unregister_aead(&aes_drv_ctx.alg.aead); + crypto_engine_unregister_aead(&aes_drv_ctx.aead); } static const struct of_device_id zynqmp_aes_dt_ids[] = { -- 2.47.3