[U-Boot] [PATCH] tegra20: add back USE_PRIVATE_LIBGCC

Lucas Stach dev at lynxeye.de
Tue Aug 7 19:53:00 CEST 2012


Hi Allen,

Am Dienstag, den 07.08.2012, 10:43 -0700 schrieb Allen Martin:
> On Tue, Aug 07, 2012 at 10:09:00AM -0700, Lucas Stach wrote:
> > Am Dienstag, den 07.08.2012, 11:00 -0600 schrieb Stephen Warren:
> > > On 08/06/2012 06:19 PM, Lucas Stach wrote:
> > > > As discussed here [http://patchwork.ozlabs.org/patch/158202/] we want to
> > > > use USE_PRIVATE_LIBGCC still.
> > > > 
> > > > However commit 5286f1ce dropped it regardless. Adding this back fixes a
> > > > hang while handing over from SPL to U-Boot on Colibri T20.
> > > 
> > > This probably makes sense, but Allen should comment on this.
> > > 
> > > I wonder why I haven't seen any issue with this; perhaps SPL on all the
> > > boards I tested ended up not using any libgcc functions? But in that
> > > case, why would the Colibri board end up using them?
> > > 
> > Could also be a toolchain issue. My normal workflow uses a toolchain
> > without a libgcc, as we didn't needed it to this point.
> > After porting over my changes to the new SPL boot I had to switch to a
> > CodeSourcery toolchain containing a libgcc. So I'm not entirely sure
> > where the problem lies, as I varied codebase and toolchain at one. But I
> > confirmed that this patch works with both of my toolchains.
> > 
> > So yes, I'm really in favour of some comments.
> 
> What's the CodeSourcery toolchain you're using?  The
> USE_PRIVATE_LIBGCC was used to prevent armv5 instructions from the
> toolchain's libgcc from getting into the code that executes on the AVP
> which is an arm7tdmi (armv4t).  Since all the code that runs on the
> AVP is built separately now as part of the SPL, using the toolchain's
> libgcc should work for the main u-boot build.  USE_PRIVATE_LIBGCC is
> still turned on for the SPL build.
> 
> I've tested the following toolchains on ventana and seaboard tegra20
> platforms:
> 
> gcc 4.4.6 arm7tdmi-linux-gnueabi built with crosstool-ng
> gcc 4.4.6 cortex_a9-linux-gnueabi built with crosstool-ng
> gcc 4.6.1 cortex_a9-linux-gnueabi built with crosstool-ng
> 
> Tell me what CodeSourcery version you're using and I'll test it here
> as well and see if I can reproduce the problem.
> 
I used CodeSourcery arm-2011.09-70-arm-none-linux-gnueabi to test this.

And to answer Tom's question: the failure was that the real U-Boot would
not come up after the SPL. All I could see was the one line printed by
the SPL and nothing more.

Thanks,
Lucas




More information about the U-Boot mailing list