fix(imx8m): fix imx8mq build break

Fix the build break for i.MX8MQ to make it boot
with basic function enabled.

Signed-off-by: Jacky Bai <ping.bai@nxp.com>
Change-Id: I2ff7976e3fb7960d6876d26fe0b4a78e51219ae2
diff --git a/plat/imx/imx8m/imx8mq/imx8mq_bl31_setup.c b/plat/imx/imx8m/imx8mq/imx8mq_bl31_setup.c
index 735f5db..fdaf9fd 100644
--- a/plat/imx/imx8m/imx8mq/imx8mq_bl31_setup.c
+++ b/plat/imx/imx8m/imx8mq/imx8mq_bl31_setup.c
@@ -209,13 +209,19 @@
 				MT_MEMORY | MT_RW | MT_SECURE),
 		MAP_REGION_FLAT(BL_CODE_BASE, BL_CODE_END - BL_CODE_BASE,
 				MT_MEMORY | MT_RO | MT_SECURE),
+#if SEPARATE_NOBITS_REGION
+		MAP_REGION_FLAT(BL_NOBITS_BASE, BL_NOBITS_END - BL_NOBITS_BASE,
+				MT_RW_DATA | MT_SECURE),
+#endif
 #if USE_COHERENT_MEM
 		MAP_REGION_FLAT(BL_COHERENT_RAM_BASE,
 				BL_COHERENT_RAM_END - BL_COHERENT_RAM_BASE,
 				MT_DEVICE | MT_RW | MT_SECURE),
 #endif
+#if defined(SPD_opteed) || defined(SPD_trusty)
 		/* Map TEE memory */
 		MAP_REGION_FLAT(BL32_BASE, BL32_SIZE, MT_MEMORY | MT_RW),
+#endif
 		{0},
 	};
 
diff --git a/plat/imx/imx8m/imx8mq/include/platform_def.h b/plat/imx/imx8m/imx8mq/include/platform_def.h
index c828989..34bd77e 100644
--- a/plat/imx/imx8m/imx8mq/include/platform_def.h
+++ b/plat/imx/imx8m/imx8mq/include/platform_def.h
@@ -37,6 +37,12 @@
 #define BL31_SIZE			SZ_64K
 #define BL31_LIMIT			(BL31_BASE + BL31_SIZE)
 
+#define OCRAM_S_BASE			U(0x180000)
+#define OCRAM_S_SIZE			SZ_32K
+#define OCRAM_S_LIMIT			(OCRAM_S_BASE + OCRAM_S_SIZE)
+#define BL31_NOBITS_BASE		OCRAM_S_BASE
+#define BL31_NOBITS_LIMIT		(BL31_NOBITS_BASE + SZ_32K)
+
 /* non-secure uboot base */
 #ifndef PLAT_NS_IMAGE_OFFSET
 #define PLAT_NS_IMAGE_OFFSET		U(0x40200000)
@@ -54,7 +60,7 @@
 #define MAX_XLAT_TABLES			5
 #define MAX_MMAP_REGIONS		15
 #else
-#define MAX_XLAT_TABLES			4
+#define MAX_XLAT_TABLES			3
 #define MAX_MMAP_REGIONS		14
 #endif
 
@@ -144,10 +150,6 @@
 #define GPR_TZASC_EN			BIT(0)
 #define GPR_TZASC_EN_LOCK		BIT(16)
 
-#define OCRAM_S_BASE			U(0x00180000)
-#define OCRAM_S_SIZE			U(0x8000)
-#define OCRAM_S_LIMIT			(OCRAM_S_BASE + OCRAM_S_SIZE)
-
 #define COUNTER_FREQUENCY		8333333 /* 25MHz / 3 */
 
 #define IMX_WDOG_B_RESET
diff --git a/plat/imx/imx8m/imx8mq/platform.mk b/plat/imx/imx8m/imx8mq/platform.mk
index d3d2132..76fc071 100644
--- a/plat/imx/imx8m/imx8mq/platform.mk
+++ b/plat/imx/imx8m/imx8mq/platform.mk
@@ -64,6 +64,8 @@
 BL31_SOURCES		+=	${IMX_DRAM_SOURCES}
 endif
 
+SEPARATE_NOBITS_REGION  :=        1
+
 ifneq (${PRELOADED_BL33_BASE},)
 $(eval $(call add_define_val,PLAT_NS_IMAGE_OFFSET,${PRELOADED_BL33_BASE}))
 endif