summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJi Luo <ji.luo@nxp.com>2021-06-24 15:58:12 +0800
committerJi Luo <ji.luo@nxp.com>2022-04-20 09:33:10 +0800
commit977347e1124252c11363e5a93fbb7b591f9155d4 (patch)
treedbcd79f8827763ab1a90bc6fa20de0e112d0e42a
parent144d2a0e7e9c7b7494f9366497d71140164b79c6 (diff)
MA-19209-2 Support trusty for imx8ulp
Make change to support trusty on imx8ulp. Signed-off-by: Ji Luo <ji.luo@nxp.com> Change-Id: Ie3da6f6b1203d1b85a41609600613bdd8baa55c7 (cherry picked from commit 99e3b70f570db66a4228238f3192de57651c03a3)
-rw-r--r--arch/arm/include/asm/arch-imx8ulp/imx-regs.h2
-rw-r--r--arch/arm/mach-imx/Kconfig1
-rw-r--r--arch/arm/mach-imx/imx8ulp/soc.c4
-rw-r--r--lib/avb/fsl/fsl_avbkey.c4
4 files changed, 9 insertions, 2 deletions
diff --git a/arch/arm/include/asm/arch-imx8ulp/imx-regs.h b/arch/arm/include/asm/arch-imx8ulp/imx-regs.h
index e68a3bd674..f8115ce3fa 100644
--- a/arch/arm/include/asm/arch-imx8ulp/imx-regs.h
+++ b/arch/arm/include/asm/arch-imx8ulp/imx-regs.h
@@ -10,6 +10,8 @@
#include <linux/bitops.h>
#include <linux/sizes.h>
+#define CAAM_ARB_BASE_ADDR 0x26000000
+
#define PBRIDGE0_BASE 0x28000000
#define CMC0_RBASE 0x28025000
diff --git a/arch/arm/mach-imx/Kconfig b/arch/arm/mach-imx/Kconfig
index 18f63c7fa3..53a82cc4a6 100644
--- a/arch/arm/mach-imx/Kconfig
+++ b/arch/arm/mach-imx/Kconfig
@@ -316,7 +316,6 @@ menu "TRUSTY OS Support"
config IMX_TRUSTY_OS
bool "Support Trusty OS related feature"
- depends on ARCH_MX6 || ARCH_MX7 || ARCH_IMX8 || ARCH_IMX8M
select SYS_ARM_CACHE_WRITEALLOC
select CMD_MMC_RPMB
select SUPPORT_EMMC_RPMB
diff --git a/arch/arm/mach-imx/imx8ulp/soc.c b/arch/arm/mach-imx/imx8ulp/soc.c
index 1850af443f..e2412f6de1 100644
--- a/arch/arm/mach-imx/imx8ulp/soc.c
+++ b/arch/arm/mach-imx/imx8ulp/soc.c
@@ -434,7 +434,11 @@ static struct mm_region imx8ulp_arm64_mem_map[] = {
.phys = 0x80000000UL,
.size = PHYS_SDRAM_SIZE,
.attrs = PTE_BLOCK_MEMTYPE(MT_NORMAL) |
+#ifdef CONFIG_IMX_TRUSTY_OS
+ PTE_BLOCK_INNER_SHARE
+#else
PTE_BLOCK_OUTER_SHARE
+#endif
}, {
/*
* empty entrie to split table entry 5
diff --git a/lib/avb/fsl/fsl_avbkey.c b/lib/avb/fsl/fsl_avbkey.c
index 362bdbd116..8a7ff57f46 100644
--- a/lib/avb/fsl/fsl_avbkey.c
+++ b/lib/avb/fsl/fsl_avbkey.c
@@ -1181,7 +1181,7 @@ bool hab_is_enabled(void)
}
if (lc != 0x80)
-#else
+#elif CONFIG_ARCH_IMX8M
struct imx_sec_config_fuse_t *fuse =
(struct imx_sec_config_fuse_t *)&imx_sec_config_fuse;
uint32_t reg;
@@ -1194,6 +1194,8 @@ bool hab_is_enabled(void)
}
if (!((reg & HAB_ENABLED_BIT) == HAB_ENABLED_BIT))
+#else
+ if (1)
#endif
return false;
else