caam-keygen device not working for NXP imx7

[email protected] Mon, 28 Jul 2025 06:39:57 -0700
Newsgroups org.yoctoproject.lists.meta-freescale
Message-ID <[email protected]>
--bJYJsJVLmzzZVfqYcg9Z
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable

Dear Yocto Community,

we struggle to setup the caam-keygen driver for NXP imx7 chip. The aim is t=
o create an encrypted part of the storage like it is done here: https://www=
.marcusfolkesson.se/blog/encrypted-storage-on-imx/.

Therefore we activated the camm-keygen in the deconfig:

zcat /proc/config.gz | grep -i caam

CONFIG_TRUSTED_KEYS_CAAM=3Dy
CONFIG_CRYPTO_DEV_FSL_CAAM_COMMON=3Dy
CONFIG_CRYPTO_DEV_FSL_CAAM_CRYPTO_API_DESC=3Dy
CONFIG_CRYPTO_DEV_FSL_CAAM_AHASH_API_DESC=3Dy
CONFIG_CRYPTO_DEV_FSL_CAAM=3Dy
# CONFIG_CRYPTO_DEV_FSL_CAAM_DEBUG is not set
CONFIG_CRYPTO_DEV_FSL_CAAM_JR=3Dy
CONFIG_CRYPTO_DEV_FSL_CAAM_RINGSIZE=3D9
# CONFIG_CRYPTO_DEV_FSL_CAAM_INTC is not set
CONFIG_CRYPTO_DEV_FSL_CAAM_CRYPTO_API=3Dy
CONFIG_CRYPTO_DEV_FSL_CAAM_AHASH_API=3Dy
CONFIG_CRYPTO_DEV_FSL_CAAM_PKC_API=3Dy
CONFIG_CRYPTO_DEV_FSL_CAAM_RNG_API=3Dy
CONFIG_CRYPTO_DEV_FSL_CAAM_PRNG_API=3Dy
CONFIG_CRYPTO_DEV_FSL_CAAM_BLOB_GEN=3Dy
# CONFIG_CRYPTO_DEV_FSL_CAAM_RNG_TEST is not set

But when starting up the device registration is not complete:

~:# dmesg | grep caam

[=C2=A0=C2=A0=C2=A0 1.544624] caam 30900000.crypto: device ID =3D 0x0a16030=
000000000 (Era 8)

[=C2=A0=C2=A0=C2=A0 1.551389] caam 30900000.crypto: job rings =3D 3, qi =3D=
 0

[=C2=A0=C2=A0=C2=A0 1.560184] caam algorithms registered in /proc/crypto

[=C2=A0=C2=A0=C2=A0 1.565593] caam 30900000.crypto: caam pkc algorithms reg=
istered in /proc/crypto

[=C2=A0=C2=A0=C2=A0 1.573038] caam 30900000.crypto: registering rng-caam

[=C2=A0=C2=A0=C2=A0 1.578480] caam 30900000.crypto: rng crypto API alg regi=
stered prng-caam

* Regarding NXP there should be an entry *=E2=80=9CDevice caam-keygen regis=
tered=E2=80=9D -* but this is missing ** is missing?

With the nxp kernel [linux-imx](https://github.com/nxp-imx/linux-imx) the d=
river is working - but many other things does not work - that=C2=B4s why we=
 aim to stay on meta-freescale.

Is there support for the crypto drivers? Have we overseen something during =
activation?

Thanks in advance and best regards,
Tommy

--bJYJsJVLmzzZVfqYcg9Z
Content-Type: text/html; charset="utf-8"
Content-Transfer-Encoding: quoted-printable

<div>Dear Yocto Community,</div>
<div>=C2=A0</div>
<div>we struggle to setup the caam-keygen driver for NXP imx7 chip. The aim=
 is to create an encrypted part of the storage like it is done here: <a hre=
f=3D"https://www.marcusfolkesson.se/blog/encrypted-storage-on-imx/" target=
=3D"_blank" rel=3D"noopener">https://www.marcusfolkesson.se/blog/encrypted-=
storage-on-imx/</a>.</div>
<div>=C2=A0</div>
<div>Therefore we activated the camm-keygen in the deconfig:</div>
<div>=C2=A0</div>
<div><span lwc-2qpe2t0sbck=3D"" class=3D"test-id__field-value slds-form-ele=
ment__static slds-grow word-break-ie11 is-read-only">zcat /proc/config.gz |=
 grep -i caam <br/><br/>CONFIG_TRUSTED_KEYS_CAAM=3Dy<br/>CONFIG_CRYPTO_DEV_=
FSL_CAAM_COMMON=3Dy<br/>CONFIG_CRYPTO_DEV_FSL_CAAM_CRYPTO_API_DESC=3Dy<br/>=
CONFIG_CRYPTO_DEV_FSL_CAAM_AHASH_API_DESC=3Dy<br/>CONFIG_CRYPTO_DEV_FSL_CAA=
M=3Dy<br/># CONFIG_CRYPTO_DEV_FSL_CAAM_DEBUG is not set<br/>CONFIG_CRYPTO_D=
EV_FSL_CAAM_JR=3Dy<br/>CONFIG_CRYPTO_DEV_FSL_CAAM_RINGSIZE=3D9<br/># CONFIG=
_CRYPTO_DEV_FSL_CAAM_INTC is not set<br/>CONFIG_CRYPTO_DEV_FSL_CAAM_CRYPTO_=
API=3Dy<br/>CONFIG_CRYPTO_DEV_FSL_CAAM_AHASH_API=3Dy<br/>CONFIG_CRYPTO_DEV_=
FSL_CAAM_PKC_API=3Dy<br/>CONFIG_CRYPTO_DEV_FSL_CAAM_RNG_API=3Dy<br/>CONFIG_=
CRYPTO_DEV_FSL_CAAM_PRNG_API=3Dy<br/>CONFIG_CRYPTO_DEV_FSL_CAAM_BLOB_GEN=3D=
y<br/># CONFIG_CRYPTO_DEV_FSL_CAAM_RNG_TEST is not set</span></div>
<div>=C2=A0</div>
<div>But when starting up the device registration is not complete:</div>
<div>=C2=A0</div>
<div>
<p class=3D"DefangedMsoNormal" style=3D"margin:0px;"><span lang=3D"EN-US">~=
:# dmesg | grep caam </span></p>
<p class=3D"DefangedMsoNormal" style=3D"margin:0px;"><span lang=3D"EN-US">[=
=C2=A0=C2=A0=C2=A0 1.544624] caam 30900000.crypto: device ID =3D 0x0a160300=
00000000 (Era 8)</span></p>
<p class=3D"DefangedMsoNormal" style=3D"margin:0px;"><span lang=3D"EN-US">[=
=C2=A0=C2=A0=C2=A0 1.551389] caam 30900000.crypto: job rings =3D 3, qi =3D =
0</span></p>
<p class=3D"DefangedMsoNormal" style=3D"margin:0px;"><span lang=3D"EN-US">[=
=C2=A0=C2=A0=C2=A0 1.560184] caam algorithms registered in /proc/crypto</sp=
an></p>
<p class=3D"DefangedMsoNormal" style=3D"margin:0px;"><span lang=3D"EN-US">[=
=C2=A0=C2=A0=C2=A0 1.565593] caam 30900000.crypto: caam pkc algorithms regi=
stered in /proc/crypto</span></p>
<p class=3D"DefangedMsoNormal" style=3D"margin:0px;"><span lang=3D"EN-US">[=
=C2=A0=C2=A0=C2=A0 1.573038] caam 30900000.crypto: registering rng-caam</sp=
an></p>
<p class=3D"DefangedMsoNormal" style=3D"margin:0px;"><span lang=3D"EN-US">[=
=C2=A0=C2=A0=C2=A0 1.578480] caam 30900000.crypto: rng crypto API alg regis=
tered prng-caam</span></p>
<p class=3D"DefangedMsoNormal" style=3D"margin:0px;"><span lang=3D"EN-US">=
=C2=A0</span></p>
<ul style=3D"margin-top: 0cm;">
<li class=3D"MsoListParagraph" style=3D"margin-left: 0cm; mso-list: l1 leve=
l1 lfo2;"><span lang=3D"EN-US">Regarding NXP there should be an entry=C2=A0=
 <strong>=E2=80=9CDevice caam-keygen registered=E2=80=9D - </strong>but thi=
s is missing<strong> </strong>is missing?</span></li>
</ul>
<div>=C2=A0</div>
<div>With the nxp kernel [linux-imx](https://github.com/nxp-imx/linux-imx) =
the driver is working - but many other things does not work - that=C2=B4s w=
hy we aim to stay on meta-freescale.=C2=A0</div>
<div>=C2=A0</div>
<div>Is there support for the crypto drivers? Have we overseen something du=
ring activation?</div>
<div>=C2=A0</div>
<div>Thanks in advance and best regards,</div>
<div>Tommy</div>
</div>

--bJYJsJVLmzzZVfqYcg9Z--