[PATCH u-boot v4 00/36] U-Boot LTO (Sandbox + Some ARM boards)
Marek Behún
marek.behun at nic.cz
Tue Jun 1 18:22:30 CEST 2021
On Tue, 1 Jun 2021 16:59:52 +0200
Patrick DELAUNAY <patrick.delaunay at 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
More information about the U-Boot
mailing list