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

Pavel Machek
2015-04-08T14:00:58Z

On Wed 2015-04-08 15:13:27, Marek Vasut wrote:
> On Wednesday, April 08, 2015 at 02:09:57 PM, 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@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@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
>
> Disabling thumb build to paper over the problem is certainly not
> a solution, right?

Well. First questions first: does it work for you? What version and
what compiler?

> What is the root cause for those problems and
> how can we fix it in the right place ?

If I knew what is the root cause, do you think I'd do this?

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