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

Pavel Machek
2015-04-07T07:56:38Z

Hi!

> >In u-boot 2015.04-rc, as soon as execution hits printf("%d"), it
> >hangs. (Usually, that's after "DRAM: " message).
> >
> >Now, I have to admit I'm chainloading u-boot from
> >
> >U-Boot 2013.01.01 (Mar 25 2015 - 15:57:21)
> >
> >tftp 0x01000040 .../u-boot.bin
> >Waiting for PHY auto negotiation to complete.. done
> >ENET Speed is 100 Mbps - FULL duplex connection
> >Using mii0 device
> >TFTP from server 10.0.0.6; our IP address is 10.0.0.99
> >...
> > Bytes transferred = 325004 (4f58c hex)
> ># go 0x01000040
> >
> >...but that worked well for 2014.10, (and is nearly mandatory in my
> >config).
> >
> >I'm using cross-compiler from eldk-5.6, but eldk-5.4 crosscompiler
> >produces same behaviour, and both seem to work for 2014.10.
> >
> >Any ideas?
>
> Do you have caches on?
> Try to disable "dcache off" before "go ..." ...

I tried, and did not get any change. I also tried to flash 2015.04-rc4
directly into NOR to be loaded from SPL (not chainloaded), and it
fails the same way.

> 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?

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