Hi Lukasz, On Thu, Mar 28, 2024 at 6:20 AM Lukasz Majewski <lu...@denx.de> wrote: > > Dear Community, > > I'd like to share with you some thoughts about growth of u-boot's > binary size for SPL and u-boot proper. > > Board: XEA > SoC : imx287 (still in active production) > Problem: SPL size constrained to ~55 KiB (This cannot be exceeded). > Board design constraints u-boot proper size to less than ~448 > KiB > > > When XEA was added (2019.07): > - u-boot.sb (SPL): 37 KiB > - u-boot.img : 401 KiB > > Now (2024.04): > - u-boot.sb (SPL): 40 KiB > - u-boot.img : 427 KiB > > (With a _lot_ of effort put to reduce the size) > > Hence, the question - would it be possible to take more concern about > the binary size growth? > > Maybe CI could catch patches, which enable by default some features and > the size is unintentionally increased? > > I'm open for any feedback and thoughts on "stopping" the binary size > increase.
In addition to adding CONFIG_BOARD_SIZE_LIMIT and CONFIG_SPL_SIZE_LIMIT checks, could you try the change below? diff --git a/arch/arm/mach-imx/mxs/Kconfig b/arch/arm/mach-imx/mxs/Kconfig index d2e4205c5ce5..ee8c23d0e04f 100644 --- a/arch/arm/mach-imx/mxs/Kconfig +++ b/arch/arm/mach-imx/mxs/Kconfig @@ -32,6 +32,7 @@ if ARCH_MX28 config MX28 bool + select LTO default y I did a quick imx28_xea_defconfig build test here: U-Boot mainline --------------- $ ls -al u-boot.img -rw-rw-r-- 1 fabio fabio 444128 mar 28 09:11 u-boot.img $ ls -al spl/u-boot-spl.bin -rwxrwxr-x 1 fabio fabio 39800 mar 28 09:12 spl/u-boot-spl.bin U-Boot mainline + LTO --------------------- $ ls -al u-boot.img -rw-rw-r-- 1 fabio fabio 424144 mar 28 09:14 u-boot.img $ ls -al spl/u-boot-spl.bin -rw-rw-r-- 1 fabio fabio 37664 mar 28 09:14 spl/u-boot-spl.bin