summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--plat/imx/imx8qm/imx8qm_bl31_setup.c8
-rw-r--r--plat/imx/imx8qm/include/sec_rsrc.h8
-rw-r--r--plat/imx/imx8qx/imx8qx_bl31_setup.c7
-rw-r--r--plat/imx/imx8qx/include/sec_rsrc.h8
4 files changed, 29 insertions, 2 deletions
diff --git a/plat/imx/imx8qm/imx8qm_bl31_setup.c b/plat/imx/imx8qm/imx8qm_bl31_setup.c
index c9cdf406..dd1f107f 100644
--- a/plat/imx/imx8qm/imx8qm_bl31_setup.c
+++ b/plat/imx/imx8qm/imx8qm_bl31_setup.c
@@ -426,6 +426,7 @@ void bl31_early_platform_setup2(u_register_t arg0, u_register_t arg1,
/* turn on MU1 for non-secure OS/Hypervisor */
sc_pm_set_resource_power_mode(ipc_handle, SC_R_MU_1A, SC_PM_PW_MODE_ON);
+
/* Turn on GPT_0's power & clock for non-secure OS/Hypervisor */
sc_pm_set_resource_power_mode(ipc_handle, SC_R_GPT_0, SC_PM_PW_MODE_ON);
sc_pm_clock_enable(ipc_handle, SC_R_GPT_0, SC_PM_CLK_PER, true, 0);
@@ -437,6 +438,13 @@ void bl31_early_platform_setup2(u_register_t arg0, u_register_t arg1,
*/
mx8_partition_resources();
+#ifdef SPD_trusty
+ sc_pm_set_resource_power_mode(ipc_handle, SC_R_CAAM_JR2, SC_PM_PW_MODE_ON);
+ sc_pm_set_resource_power_mode(ipc_handle, SC_R_CAAM_JR2_OUT, SC_PM_PW_MODE_ON);
+ sc_pm_set_resource_power_mode(ipc_handle, SC_R_CAAM_JR3, SC_PM_PW_MODE_ON);
+ sc_pm_set_resource_power_mode(ipc_handle, SC_R_CAAM_JR3_OUT, SC_PM_PW_MODE_ON);
+#endif
+
bl33_image_ep_info.pc = PLAT_NS_IMAGE_OFFSET;
bl33_image_ep_info.spsr = get_spsr_for_bl33_entry();
#ifdef SPD_trusty
diff --git a/plat/imx/imx8qm/include/sec_rsrc.h b/plat/imx/imx8qm/include/sec_rsrc.h
index 260c2c72..f2d71560 100644
--- a/plat/imx/imx8qm/include/sec_rsrc.h
+++ b/plat/imx/imx8qm/include/sec_rsrc.h
@@ -19,7 +19,13 @@ sc_rsrc_t secure_rsrcs[] = {
SC_R_CCI,
SC_R_SYSTEM,
SC_R_IRQSTR_SCU2,
- SC_R_GPT_0
+ SC_R_GPT_0,
+#ifdef SPD_trusty
+ SC_R_CAAM_JR2,
+ SC_R_CAAM_JR2_OUT,
+ SC_R_CAAM_JR3,
+ SC_R_CAAM_JR3_OUT
+#endif
};
/* resources that have register access for non-secure domain */
diff --git a/plat/imx/imx8qx/imx8qx_bl31_setup.c b/plat/imx/imx8qx/imx8qx_bl31_setup.c
index 0b10191c..e15b9b38 100644
--- a/plat/imx/imx8qx/imx8qx_bl31_setup.c
+++ b/plat/imx/imx8qx/imx8qx_bl31_setup.c
@@ -414,6 +414,13 @@ void bl31_early_platform_setup2(u_register_t arg0, u_register_t arg1,
*/
imx8_partition_resources();
+#ifdef SPD_trusty
+ sc_pm_set_resource_power_mode(ipc_handle, SC_R_CAAM_JR2, SC_PM_PW_MODE_ON);
+ sc_pm_set_resource_power_mode(ipc_handle, SC_R_CAAM_JR2_OUT, SC_PM_PW_MODE_ON);
+ sc_pm_set_resource_power_mode(ipc_handle, SC_R_CAAM_JR3, SC_PM_PW_MODE_ON);
+ sc_pm_set_resource_power_mode(ipc_handle, SC_R_CAAM_JR3_OUT, SC_PM_PW_MODE_ON);
+#endif
+
bl33_image_ep_info.pc = PLAT_NS_IMAGE_OFFSET;
bl33_image_ep_info.spsr = get_spsr_for_bl33_entry();
#ifdef SPD_trusty
diff --git a/plat/imx/imx8qx/include/sec_rsrc.h b/plat/imx/imx8qx/include/sec_rsrc.h
index b7fe0e81..8a9a817f 100644
--- a/plat/imx/imx8qx/include/sec_rsrc.h
+++ b/plat/imx/imx8qx/include/sec_rsrc.h
@@ -15,7 +15,13 @@ sc_rsrc_t secure_rsrcs[] = {
SC_R_GIC,
SC_R_SYSTEM,
SC_R_IRQSTR_SCU2,
- SC_R_GPT_0
+ SC_R_GPT_0,
+#ifdef SPD_trusty
+ SC_R_CAAM_JR2,
+ SC_R_CAAM_JR2_OUT,
+ SC_R_CAAM_JR3,
+ SC_R_CAAM_JR3_OUT
+#endif
};
/* resources that have register access for non-secure domain */