
Hi Lukasz,
On Thu, Mar 28, 2024 at 6:20 AM Lukasz Majewski lukma@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