]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
crypto: caam - use JobR's space to access page 0 regs
authorGaurav Jain <gaurav.jain@nxp.com>
Tue, 26 Nov 2024 06:46:07 +0000 (12:16 +0530)
committerHerbert Xu <herbert@gondor.apana.org.au>
Tue, 10 Dec 2024 05:44:20 +0000 (13:44 +0800)
On iMX8DXL/QM/QXP(SECO) & iMX8ULP(ELE) SoCs, access to controller
region(CAAM page 0) is not permitted from non secure world.
use JobR's register space to access page 0 registers.

Fixes: 6a83830f649a ("crypto: caam - warn if blob_gen key is insecure")
Signed-off-by: Gaurav Jain <gaurav.jain@nxp.com>
Reviewed-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Reviewed-by: Horia Geantă <horia.geanta@nxp.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
drivers/crypto/caam/blob_gen.c

index 87781c1534ee5b0758539298b34cebe7d6cb81bb..079a22cc9f02be422e0af31212d7a31edabd7bd9 100644 (file)
@@ -2,6 +2,7 @@
 /*
  * Copyright (C) 2015 Pengutronix, Steffen Trumtrar <kernel@pengutronix.de>
  * Copyright (C) 2021 Pengutronix, Ahmad Fatoum <kernel@pengutronix.de>
+ * Copyright 2024 NXP
  */
 
 #define pr_fmt(fmt) "caam blob_gen: " fmt
@@ -104,7 +105,7 @@ int caam_process_blob(struct caam_blob_priv *priv,
        }
 
        ctrlpriv = dev_get_drvdata(jrdev->parent);
-       moo = FIELD_GET(CSTA_MOO, rd_reg32(&ctrlpriv->ctrl->perfmon.status));
+       moo = FIELD_GET(CSTA_MOO, rd_reg32(&ctrlpriv->jr[0]->perfmon.status));
        if (moo != CSTA_MOO_SECURE && moo != CSTA_MOO_TRUSTED)
                dev_warn(jrdev,
                         "using insecure test key, enable HAB to use unique device key!\n");