DCP is an IP core found on NXP SoCs such as i.mx6ull. While its bigger brother, CAAM, can directly wrap and unwrap blobs in hardware[0], DCP offers only the bare minimum and the blob mechanism needs aid from software. This series adds support for a new trusted keys backend that makes use of DCP's feature to use hardware keys which can never be read out. [0] https://lore.kernel.org/lkml/cover.56fff82362af6228372ea82e6bd7e586e23f0966.1615914058.git-series.a.fatoum@xxxxxxxxxxxxxx/ --- Cc: Ahmad Fatoum <a.fatoum@xxxxxxxxxxxxxx> Cc: David Gstir <david@xxxxxxxxxxxxx> Cc: David Howells <dhowells@xxxxxxxxxx> Cc: "David S. Miller" <davem@xxxxxxxxxxxxx> Cc: Fabio Estevam <festevam@xxxxxxxxx> Cc: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx> Cc: James Bottomley <jejb@xxxxxxxxxxxxx> Cc: James Morris <jmorris@xxxxxxxxx> Cc: Jarkko Sakkinen <jarkko@xxxxxxxxxx> Cc: Jonathan Corbet <corbet@xxxxxxx> Cc: keyrings@xxxxxxxxxxxxxxx Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx Cc: linux-crypto@xxxxxxxxxxxxxxx Cc: linux-doc@xxxxxxxxxxxxxxx Cc: linux-integrity@xxxxxxxxxxxxxxx Cc: linux-kernel@xxxxxxxxxxxxxxx Cc: linux-security-module@xxxxxxxxxxxxxxx Cc: Mimi Zohar <zohar@xxxxxxxxxxxxx> Cc: NXP Linux Team <linux-imx@xxxxxxx> Cc: Pengutronix Kernel Team <kernel@xxxxxxxxxxxxxx> Cc: Richard Weinberger <richard@xxxxxx> Cc: Sascha Hauer <s.hauer@xxxxxxxxxxxxxx> Cc: "Serge E. Hallyn" <serge@xxxxxxxxxx> Cc: Shawn Guo <shawnguo@xxxxxxxxxx> David Gstir (1): doc: trusted-encrypted: add DCP as new trust source Richard Weinberger (2): crypto: mxs-dcp: Add support for hardware provided keys KEYS: trusted: Introduce support for NXP DCP-based trusted keys .../admin-guide/kernel-parameters.txt | 1 + .../security/keys/trusted-encrypted.rst | 84 ++++- MAINTAINERS | 9 + drivers/crypto/mxs-dcp.c | 110 +++++- include/keys/trusted_dcp.h | 13 + include/linux/mxs-dcp.h | 19 + security/keys/trusted-keys/Makefile | 1 + security/keys/trusted-keys/trusted_core.c | 6 +- security/keys/trusted-keys/trusted_dcp.c | 325 ++++++++++++++++++ 9 files changed, 554 insertions(+), 14 deletions(-) create mode 100644 include/keys/trusted_dcp.h create mode 100644 include/linux/mxs-dcp.h create mode 100644 security/keys/trusted-keys/trusted_dcp.c -- 2.26.2