diff options
Diffstat (limited to 'target/linux/layerscape/patches-5.4/804-crypto-0012-MLK-19053-crypto-caam-RNG4-TRNG-errata.patch')
-rw-r--r-- | target/linux/layerscape/patches-5.4/804-crypto-0012-MLK-19053-crypto-caam-RNG4-TRNG-errata.patch | 63 |
1 files changed, 0 insertions, 63 deletions
diff --git a/target/linux/layerscape/patches-5.4/804-crypto-0012-MLK-19053-crypto-caam-RNG4-TRNG-errata.patch b/target/linux/layerscape/patches-5.4/804-crypto-0012-MLK-19053-crypto-caam-RNG4-TRNG-errata.patch deleted file mode 100644 index 761652ab71..0000000000 --- a/target/linux/layerscape/patches-5.4/804-crypto-0012-MLK-19053-crypto-caam-RNG4-TRNG-errata.patch +++ /dev/null @@ -1,63 +0,0 @@ -From e1a89cdf6fa6b04806eb24b939738bb89ab62914 Mon Sep 17 00:00:00 2001 -From: Aymen Sghaier <aymen.sghaier@nxp.com> -Date: Thu, 13 Sep 2018 16:41:03 +0200 -Subject: [PATCH] MLK-19053 crypto: caam - RNG4 TRNG errata -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - - The TRNG as used in RNG4, used in CAAM has a documentation issue. The -effect is that it is possible that the entropy used to instantiate the -DRBG may be old entropy, rather than newly generated entropy. There is -proper programming guidance, but it is not in the documentation. - -Signed-off-by: Aymen Sghaier <aymen.sghaier@nxp.com> -Signed-off-by: Vipul Kumar <vipul_kumar@mentor.com> -(cherry picked from commit ea2b30c8171acf7624e3d44276737c3878ca900d) - --ported to RNG initialization in ctrl.c --changed commit headline - -Signed-off-by: Horia Geantă <horia.geanta@nxp.com> ---- - drivers/crypto/caam/ctrl.c | 9 +++++++-- - drivers/crypto/caam/regs.h | 3 ++- - 2 files changed, 9 insertions(+), 3 deletions(-) - ---- a/drivers/crypto/caam/ctrl.c -+++ b/drivers/crypto/caam/ctrl.c -@@ -339,7 +339,11 @@ static void kick_trng(struct platform_de - r4tst = &ctrl->r4tst[0]; - - /* put RNG4 into program mode */ -- clrsetbits_32(&r4tst->rtmctl, 0, RTMCTL_PRGM); -+ /* Setting both RTMCTL:PRGM and RTMCTL:TRNG_ACC causes TRNG to -+ * properly invalidate the entropy in the entropy register and -+ * force re-generation. -+ */ -+ clrsetbits_32(&r4tst->rtmctl, 0, RTMCTL_PRGM | RTMCTL_ACC); - - /* - * Performance-wise, it does not make sense to -@@ -369,7 +373,8 @@ start_rng: - * select raw sampling in both entropy shifter - * and statistical checker; ; put RNG4 into run mode - */ -- clrsetbits_32(&r4tst->rtmctl, RTMCTL_PRGM, RTMCTL_SAMP_MODE_RAW_ES_SC); -+ clrsetbits_32(&r4tst->rtmctl, RTMCTL_PRGM | RTMCTL_ACC, -+ RTMCTL_SAMP_MODE_RAW_ES_SC); - } - - static int caam_get_era_from_hw(struct caam_ctrl __iomem *ctrl) ---- a/drivers/crypto/caam/regs.h -+++ b/drivers/crypto/caam/regs.h -@@ -495,7 +495,8 @@ struct rngtst { - - /* RNG4 TRNG test registers */ - struct rng4tst { --#define RTMCTL_PRGM 0x00010000 /* 1 -> program mode, 0 -> run mode */ -+#define RTMCTL_ACC BIT(5) /* TRNG access mode */ -+#define RTMCTL_PRGM BIT(16) /* 1 -> program mode, 0 -> run mode */ - #define RTMCTL_SAMP_MODE_VON_NEUMANN_ES_SC 0 /* use von Neumann data in - both entropy shifter and - statistical checker */ |