Message ID | 20241126064607.456633-1-gaurav.jain@nxp.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | [v2] crypto: caam - use JobR's space to access page 0 regs | expand |
On 26.11.24 07:46, Gaurav Jain wrote: > 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> > --- > > changes in v2 > Updated commit message with SoCs details on which CAAM page 0 is not > accessible from non secure world. > > drivers/crypto/caam/blob_gen.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/drivers/crypto/caam/blob_gen.c b/drivers/crypto/caam/blob_gen.c > index 87781c1534ee..079a22cc9f02 100644 > --- a/drivers/crypto/caam/blob_gen.c > +++ b/drivers/crypto/caam/blob_gen.c > @@ -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");
diff --git a/drivers/crypto/caam/blob_gen.c b/drivers/crypto/caam/blob_gen.c index 87781c1534ee..079a22cc9f02 100644 --- a/drivers/crypto/caam/blob_gen.c +++ b/drivers/crypto/caam/blob_gen.c @@ -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");
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> --- changes in v2 Updated commit message with SoCs details on which CAAM page 0 is not accessible from non secure world. drivers/crypto/caam/blob_gen.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)