
Tom
Can you give the exact bytes saved in each case, with your specific compiler? I ask since I'm surprised it's more than a function being dropped by the linker in this case. diff'ing the u-boot-spl.map files would also say what is dropped and I'd be interested in that. > (And >yes, I'm asking for more details to justify adding a Kconfig option here). Thanks
Compiler : arm-linu-gnueabihif-gcc, version: 6.2-2016.11)
- default dra7xx_evm_defconfig and use cli_simple_runcommand - MLO size is 129998
This is with no patches.
- default dra7xx_evm_defconfig and dropping CLI and use do_reset - MLO size is 126130, saving is ~4K (129998-126130 = 3878 bytes).
This 4K saving is based on this V2 patches series (excludes only CONFIG_DFU_MMC in SPL-DFU).
- default dra7xx_evm_defconfig and dropping CLI and dropping do_reset - MLO size is 125298, saving is ~5K (129998-125298 = 4708 bytes).
(My bad, I changed to V1 initial series in between while taking this data) This 5K saving is based on this V1 patches (basically, which excludes all CONFIG_DFU_<MMC/NAND/SF/TFTP> in SPL-DFU) Dropping do_reset in SPL does not reduce the MLO size. I observe do_reset is always included in spl-uboot.map whether exclude and include.
Regards Ravi