summaryrefslogtreecommitdiff
path: root/plat/imx/imx8mm/imx8mm_bl31_setup.c
diff options
context:
space:
mode:
authorSilvano di Ninno <silvano.dininno@nxp.com>2018-05-17 17:32:10 +0200
committerAbel Vesa <abel.vesa@nxp.com>2018-06-11 10:33:03 +0300
commit7dd1b741efdc60ca6b5eaafc9d863744beb7064e (patch)
tree2d1a1dcf8f172b0d090b182a6255ccbfc79792eb /plat/imx/imx8mm/imx8mm_bl31_setup.c
parentddac82579f52819dc24e6bf5eb23f9fd354844fb (diff)
MLK-18343-2: plat: imx8mm: add support for RDC and CSU
move CSU and RDC driver to common/i.mx8m folder and enable the driver for i.mx8mm Signed-off-by: Silvano di Ninno <silvano.dininno@nxp.com> Reviewed-by: Aymen Sghaier <aymen.sghaier@nxp.com>
Diffstat (limited to 'plat/imx/imx8mm/imx8mm_bl31_setup.c')
-rw-r--r--plat/imx/imx8mm/imx8mm_bl31_setup.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/plat/imx/imx8mm/imx8mm_bl31_setup.c b/plat/imx/imx8mm/imx8mm_bl31_setup.c
index 4dc2b1af..f5b07edb 100644
--- a/plat/imx/imx8mm/imx8mm_bl31_setup.c
+++ b/plat/imx/imx8mm/imx8mm_bl31_setup.c
@@ -19,6 +19,8 @@
#include <xlat_tables.h>
#include <soc.h>
#include <tzc380.h>
+#include <imx_csu.h>
+#include <imx_rdc.h>
/* linker defined symbols */
extern unsigned long __RO_START__;
@@ -69,7 +71,6 @@ static uint32_t get_spsr_for_bl33_entry(void)
#define GPR_TZASC_EN (1 << 0)
#define GPR_TZASC_EN_LOCK (1 << 16)
-#if 1
void bl31_tzc380_setup(void)
{
unsigned int val;
@@ -131,17 +132,17 @@ static void imx8mm_aips_config(void)
mmio_write_32(0x32df004c, 0x0);
mmio_write_32(0x32df0050, 0x0);
}
-#endif
void bl31_early_platform_setup2(u_register_t arg0, u_register_t arg1,
u_register_t arg2, u_register_t arg3)
{
+#if !defined (CSU_RDC_TEST)
int i;
/* enable CSU NS access permission */
for (i = 0; i < 64; i++) {
mmio_write_32(0x303e0000 + i * 4, 0xffffffff);
}
-
+#endif
/* config the aips access permission */
imx8mm_aips_config();
@@ -168,6 +169,11 @@ void bl31_early_platform_setup2(u_register_t arg0, u_register_t arg1,
bl33_image_ep_info.args.arg2 = 0x2000000;
#endif
bl31_tzc380_setup();
+
+#if defined (CSU_RDC_TEST)
+ csu_test();
+ rdc_test();
+#endif
}
void bl31_plat_arch_setup(void)