
On Tue, 1 Jun 2021 16:59:52 +0200 Patrick DELAUNAY patrick.delaunay@foss.st.com wrote:
Hi Marek,
I am trying to activate CONFIG_LTO for STMicroelectronics stm32mp15 platform
(stm32mp15_trusted_defconfig and stm32mp15_basic_defconfig).
The config stm32mp15_basic_defconfig, with SPL supported failed to boot
with gcc-arm-9.2-2019.12.
because a weak function is not correctly handle between
1/ ./arch/arm/lib/cache-cp15.c: 96
__weak void dram_bank_mmu_setup(int bank);
2/ the stm32mp implementation in
arch/arm/mach-stm32mp/cpu.c:62
void dram_bank_mmu_setup(int bank)
=> The used function in SPL is the cache library, not the stm32mp function.
and SPL boot it OK when I remove the function in the cache library...
And the issue is also solved with I use a more recent version
gcc-arm-10.2-2020.11 on my PC.
Do you see the same kind of issue for old version of gcc ?
Do you think CONFIG_LTO require a more recent version of gcc that
the minimal version required by U-Boot because I don't see this information
in the serie?
I only tried compiling with older versions in the CI.
On the devices for which I tested it I only compiled with newer gcc (10.2.0) since it is the stable version on my system.
But yeah, I suggest to use newer GCC for LTO.
Marek