]> git.baikalelectronics.ru Git - arm-tf.git/commitdiff
refactor(imx8mp): cleanup the mmap region settings
authorMarco Felsch <m.felsch@pengutronix.de>
Fri, 1 Jul 2022 13:44:09 +0000 (15:44 +0200)
committerMarco Felsch <m.felsch@pengutronix.de>
Thu, 20 Oct 2022 16:20:19 +0000 (18:20 +0200)
Introduce the bl_regions array to gather all regions and make use of the
MAP_REGION_FLAT() macro. The array is than passed to mmap_add() to map
all regions. While on it introduce some defines so the addr, size and
flags can be read more easily. No functional change done.

Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
Change-Id: I7f637beea61138a86d691cd78fba2dd17e4dc925

plat/imx/imx8m/imx8mp/imx8mp_bl31_setup.c

index 34631b8687d63cd826ba4fbd14e5528a439f8062..76c201edd9f57b232eb9d1b8a26391ee1d5e82c0 100644 (file)
@@ -175,21 +175,30 @@ void bl31_early_platform_setup2(u_register_t arg0, u_register_t arg1,
        bl31_tzc380_setup();
 }
 
+#define MAP_BL31_TOTAL                                                                            \
+       MAP_REGION_FLAT(BL31_BASE, BL31_LIMIT - BL31_BASE, MT_MEMORY | MT_RW | MT_SECURE)
+#define MAP_BL31_RO                                                                               \
+       MAP_REGION_FLAT(BL_CODE_BASE, BL_CODE_END - BL_CODE_BASE, MT_MEMORY | MT_RO | MT_SECURE)
+#define MAP_COHERENT_MEM                                                                          \
+       MAP_REGION_FLAT(BL_COHERENT_RAM_BASE, BL_COHERENT_RAM_END - BL_COHERENT_RAM_BASE,          \
+                       MT_DEVICE | MT_RW | MT_SECURE)
+#define MAP_BL32_TOTAL                                                                            \
+       MAP_REGION_FLAT(BL32_BASE, BL32_SIZE, MT_MEMORY | MT_RW)
+
 void bl31_plat_arch_setup(void)
 {
-       mmap_add_region(BL31_BASE, BL31_BASE, (BL31_LIMIT - BL31_BASE),
-               MT_MEMORY | MT_RW | MT_SECURE);
-       mmap_add_region(BL_CODE_BASE, BL_CODE_BASE, (BL_CODE_END - BL_CODE_BASE),
-               MT_MEMORY | MT_RO | MT_SECURE);
+       const mmap_region_t bl_regions[] = {
+               MAP_BL31_TOTAL,
+               MAP_BL31_RO,
 #if USE_COHERENT_MEM
-       mmap_add_region(BL_COHERENT_RAM_BASE, BL_COHERENT_RAM_BASE,
-               (BL_COHERENT_RAM_END - BL_COHERENT_RAM_BASE),
-               MT_DEVICE | MT_RW | MT_SECURE);
+               MAP_COHERENT_MEM,
 #endif
+               /* Map TEE memory */
+               MAP_BL32_TOTAL,
+               {0}
+       };
 
-       /* Map TEE memory */
-       mmap_add_region(BL32_BASE, BL32_BASE, BL32_SIZE, MT_MEMORY | MT_RW);
-
+       mmap_add(bl_regions);
        mmap_add(imx_mmap);
 
        init_xlat_tables();