[U-Boot] printf("%d") breaks u-boot 2015.01+

Pavel Machek pavel at denx.de
Wed Apr 8 18:06:08 CEST 2015


On Wed 2015-04-08 11:53:38, Tom Rini wrote:
> On Wed, Apr 08, 2015 at 04:06:34PM +0200, Pavel Machek wrote:
> > On Wed 2015-04-08 09:49:53, Tom Rini wrote:
> > > On Wed, Apr 08, 2015 at 02:09:57PM +0200, Pavel Machek wrote:
> > > > Hi!
> > > > 
> > > > > >>maybe this helps? I just stepped into same problem on an am335x,
> > > > > >>but had not yet time to look deeper in it ...
> > > > > >
> > > > > >I did not try the cleanup_before_linux(), but "dcache off" should have
> > > > > >same effect, right?
> > > > > 
> > > > > Hmm.. not exactly... cleanup_before_linux() does also disable the mmu.
> > > > 
> > > > Seems like I found the reason. CONFIG_THUMB_BUILD was set, and 
> > > > that causes problems in put_dec_trunc() function (and elsewhere).
> > > > 
> > > > commit 1602a502985d42bafb58cc6862b469ac03a7d634
> > > > Author: Pavel <pavel at ucw.cz>
> > > > Date:   Wed Apr 8 14:08:18 2015 +0200
> > > > 
> > > >     Disable thumb build; it breaks put_dec_trunc() function on toolchain
> > > >     from eldk-5.6 and eldk-5.4, and some other place, too.
> > > >     
> > > >     Signed-off-by: Pavel Machek <pavel at denx.de>
> > > > 
> > > > diff --git a/include/configs/socfpga_common.h b/include/configs/socfpga_common.h
> > > > index 6d93472..6608d7d 100644
> > > > --- a/include/configs/socfpga_common.h
> > > > +++ b/include/configs/socfpga_common.h
> > > > @@ -11,7 +11,7 @@
> > > >  /* Virtual target or real hardware */
> > > >  #undef CONFIG_SOCFPGA_VIRTUAL_TARGET
> > > >  
> > > > -#define CONFIG_SYS_THUMB_BUILD
> > > > +#undef CONFIG_SYS_THUMB_BUILD
> > > >  
> > > >  #define CONFIG_SOCFPGA
> > > 
> > > OK, this is kind of scary.  What is wrong with those toolchains OR how
> > > we're telling them to build things as no, we should be able to use thumb
> > > mode just fine and need to for size reasons in various cases.
> > 
> > Well.. it is scary, as put_dec_trunc() is very straightforward
> > function. It works in 2014.10, even with thumb on.
> > 
> > > If this
> > > is a generic problem then for example, omap4_panda + ELDK 5.4/5.6 just
> > > shouldn't work either and we _must_ use thumb there for at least SPL.
> > 
> > I don't know enough about thumb in u-boot. And yes, I'd like people to
> > confirm if u-boot works for them on socfpga...
> 
> I'll fire up ELDK 5.4 + Pandaboard later today (which uses thumb) but I
> think you need to bisect down to when exactly things break since my gut
> is telling me it's not toolchain / thumb but something else that broke
> things.

Thanks.

Well, it broke between 2014.10 and 2015.01, so I think it should be
toolchain (because broken socfpga for >4 months... someone would
notice, no?).

Marek told me I should mention... I'm using USE_PRIVATE_LIBGCC because
compilation does not work without that.

Best regards,
									Pavel
-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html


More information about the U-Boot mailing list