[PATCH] imx8mp_evk: Make SPL binary size smaller

Peng Fan peng.fan at nxp.com
Sun May 10 16:32:12 CEST 2020


> Subject: Re: [PATCH] imx8mp_evk: Make SPL binary size smaller
> 
> On Thu, May 7, 2020 at 8:59 AM Fabio Estevam <festevam at gmail.com>
> wrote:
> >
> > Commit f24dea4e1b52 ("ARM: imx8m: Fix reset in SPL on NXP iMX8MP
> EVK")
> > caused the u-boot-spl.bin binary size to grow by around 2000 bytes,
> > which makes the board to fail to boot.
> 
> The new SPL size is 97kB, which is below the limit define in imx8mp_evk.h:
> #define CONFIG_SPL_MAX_SIZE (152 * 1024)
> 
> It seems the problem is not related to SPL size.
> 
> Peng, do you have any ideas?

The following patch will make it boot again, not perfect, I need think
more out an elegant fix. Disable DM SPL? Or recalculate the address.
Enable DM consumes too much
on chip ocram malloc area. Need to think about it how we could
use less ocram for SPL malloc area.

diff --git a/include/configs/imx8mp_evk.h b/include/configs/imx8mp_evk.h
index 80e5738961..b90a4f6932 100644
--- a/include/configs/imx8mp_evk.h
+++ b/include/configs/imx8mp_evk.h
@@ -23,15 +23,15 @@
 #ifdef CONFIG_SPL_BUILD
 /*#define CONFIG_ENABLE_DDR_TRAINING_DEBUG*/
 #define CONFIG_SPL_LDSCRIPT            "arch/arm/cpu/armv8/u-boot-spl.lds"
-#define CONFIG_SPL_STACK               0x990000
-#define CONFIG_SPL_BSS_START_ADDR      0x0095e000
-#define CONFIG_SPL_BSS_MAX_SIZE        0x2000  /* 8 KB */
+#define CONFIG_SPL_STACK               0x98fc00
+#define CONFIG_SPL_BSS_START_ADDR      0x0098fc00
+#define CONFIG_SPL_BSS_MAX_SIZE        0x400   /* 1 KB */
 #define CONFIG_SYS_SPL_MALLOC_START    0x42200000
 #define CONFIG_SYS_SPL_MALLOC_SIZE     SZ_512K /* 512 KB */
 #define CONFIG_SYS_ICACHE_OFF
 #define CONFIG_SYS_DCACHE_OFF

-#define CONFIG_MALLOC_F_ADDR           0x940000
+#define CONFIG_MALLOC_F_ADDR           0x950000

 #define CONFIG_SPL_ABORT_ON_RAW_IMAGE

Regards,
Peng.

> 
> Thanks


More information about the U-Boot mailing list