[RFC PATCH u-boot 00/12] U-Boot LTO (Sandbox + ARM Nokia RX-51)

Marek Behun marek.behun at nic.cz
Thu Mar 4 16:37:29 CET 2021


On Thu, 4 Mar 2021 09:07:33 -0600
Adam Ford <aford173 at gmail.com> wrote:

> On Thu, Mar 4, 2021 at 8:58 AM Tom Rini <trini at konsulko.com> wrote:
> >
> > On Thu, Mar 04, 2021 at 07:46:18AM -0600, Adam Ford wrote:  
> > > On Thu, Mar 4, 2021 at 4:43 AM Marek Behun <marek.behun at nic.cz> wrote:  
> > > >
> > > > On Wed, 3 Mar 2021 16:36:05 -0500
> > > > Tom Rini <trini at konsulko.com> wrote:
> > > >  
> > > > > So, as I start testing things locally with two additional changes (1.
> > > > > LTO by default 2. No ffunction/data-sections with LTO) we see:
> > > > > https://gist.github.com/trini/350ab850c42293563228b8d68a1bb89a
> > > > > as the detailed size reduction.  This also shows that with LTO we want
> > > > > to turn off -ffunction-sections/etc as it's not useful now.  
> > > >
> > > > Tom, I have pushed another version to github PR to trigger CI, and am
> > > > still working on clang. You can look at the github PR if you want to
> > > > try yourself. I have also added patch that disables
> > > > -ffunction-section/fdata-section on arm.
> > > >
> > > > After I manage to make it all work in CI I will send v2 to mailing list.  
> > >
> > > I tested this with the imx6q_logic board.  I only tested the U-Boot
> > > portion, but it appeared to work and it booted the kernel.  The U-Boot
> > > size reduced -7182 bytes (about 3% smaller).
> > >
> > > I haven't been able to successfully boot the OMAP3 boards I have yet.
> > > I'm still looking into this.  
> >
> > It boots (and pytest runs) on my Beagleboard xM, fwiw.  
> 
> Interesting.  with LTO enabled, the DRAM reports 7.2 GB and hangs.
> Without LTO, U-Boot boots fine.
> 
> LTO:
> OMAP3630/3730-GP ES1.2, CPU-OPP2, L3-200MHz, Max CPU Clock 1 GHz
> Model: LogicPD Zoom DM3730 Torpedo + Wireless Development Kit
> Logic DM37x/OMAP35x reference board + LPDDR/NAND
> DRAM:  7.2 GiB
> <hang>
> 
> Without LTO:
> OMAP3630/3730-GP ES1.2, CPU-OPP2, L3-200MHz, Max CPU Clock 1 GHz
> Model: LogicPD Zoom DM3730 Torpedo + Wireless Development Kit
> Logic DM37x/OMAP35x reference board + LPDDR/NAND
> DRAM:  256 MiB
> NAND:  512 MiB
> MMC:   OMAP SD/MMC: 0
> Loading Environment from NAND... OK
> OMAP die ID: 619e00029ff800000168300f1502501f
> Net:   smc911x-0
> Hit any key to stop autoboot:  0
> OMAP Logic #
> 
> adam
> >
> > --
> > Tom  

Tom, I think this means it would take some time to make it stable enough
to enable it by default on all ARM boards.

But I would really like to make it work ASAP at least for Nokia N900,
because otherwise my `mtd` patches make the binary ~200 bytes too big
for Nokia N900 and CI fails.

Or would you be willing to accept `mtd` patches even with CI failing?

Marek


More information about the U-Boot mailing list