diff mbox series

[1/1] ARM: mx6: make CAAM usable on the i.MX6 boards

Message ID 20200626175755.1868-1-xypron.glpk@gmx.de
State Awaiting Upstream
Delegated to: Stefano Babic
Headers show
Series [1/1] ARM: mx6: make CAAM usable on the i.MX6 boards | expand

Commit Message

Heinrich Schuchardt June 26, 2020, 5:57 p.m. UTC
Even if the HAB fuse is not set we want to be able to use the Cryptographic
Accelerator and Assurance Module (CAAM) for generating random numbers. So
SYS_FSL_HAS_SEC should be selected even if IMX_HAB is not set.

arch_misc_init() has to be called to initialize the CAAM.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
---
 arch/arm/Kconfig            |  2 +-
 arch/arm/mach-imx/mx6/soc.c | 10 ++++++++++
 2 files changed, 11 insertions(+), 1 deletion(-)

--
2.20.1

Comments

Stefano Babic July 16, 2020, 5:49 p.m. UTC | #1
> Even if the HAB fuse is not set we want to be able to use the Cryptographic
> Accelerator and Assurance Module (CAAM) for generating random numbers. So
> SYS_FSL_HAS_SEC should be selected even if IMX_HAB is not set.
> arch_misc_init() has to be called to initialize the CAAM.
> Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Applied to u-boot-imx, master, thanks !

Best regards,
Stefano Babic
diff mbox series

Patch

diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 54d65f8488..9a957f63c7 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -884,7 +884,7 @@  config ARCH_MX7
 config ARCH_MX6
 	bool "Freescale MX6"
 	select CPU_V7A
-	select SYS_FSL_HAS_SEC if IMX_HAB
+	select SYS_FSL_HAS_SEC
 	select SYS_FSL_SEC_COMPAT_4
 	select SYS_FSL_SEC_LE
 	imply MXC_GPIO
diff --git a/arch/arm/mach-imx/mx6/soc.c b/arch/arm/mach-imx/mx6/soc.c
index 19ca382649..e129286065 100644
--- a/arch/arm/mach-imx/mx6/soc.c
+++ b/arch/arm/mach-imx/mx6/soc.c
@@ -22,6 +22,7 @@ 
 #include <asm/arch/mxc_hdmi.h>
 #include <asm/arch/crm_regs.h>
 #include <dm.h>
+#include <fsl_sec.h>
 #include <imx_thermal.h>
 #include <mmc.h>

@@ -691,6 +692,15 @@  void imx_setup_hdmi(void)
 }
 #endif

+#ifdef CONFIG_ARCH_MISC_INIT
+int arch_misc_init(void)
+{
+#ifdef CONFIG_FSL_CAAM
+	sec_init();
+#endif
+	return 0;
+}
+#endif

 /*
  * gpr_init() function is common for boards using MX6S, MX6DL, MX6D,