[U-Boot-Users] 83xx, FSL_UEC reducing boot latency, printf causing crash

Joakim Tjernlund joakim.tjernlund at transmode.se
Fri Dec 21 13:12:32 CET 2007


> -----Original Message-----
> From: u-boot-users-bounces at lists.sourceforge.net 
> [mailto:u-boot-users-bounces at lists.sourceforge.net] On Behalf 
> Of Russell McGuire
> Sent: den 21 december 2007 12:03
> To: joakim.tjernlund at transmode.se
> Cc: u-boot-users at lists.sourceforge.net; 'Kim Phillips'
> Subject: Re: [U-Boot-Users] 83xx, FSL_UEC reducing boot 
> latency,printf causing crash
> Update,
> So by following the back trace after reset I was able to remove all
> references to functions like, printf, putc, puts, etc... From 
> within any
> function that was executing from FLASH, all of the Bad trap 
> errors have been
> removed. 
> Is there a chance I have the wrong values setup for my internal memory
> controller, that might be cuasing this? 
> I am guessing maybe other people who use Freescale boards 
> don't see this
> problem because their memory ranges are wrapping around, i.e. 
> their flash is
> at 0xFE000000 and when they wrap memory, they are still 
> accessing RAM. 
> However, I can't map my flash to this address, since I need 
> expansion room
> for massive quantities.
> So how can we fix this execution from flash issue?

Ahh, this is most likely depending on the manual relocation of
pointers/global data that u-boot does, only partial relocation is
performed. To get full relocation you must revert commit 
928fe33b24cdf382a8dc8687fed24b1961cdb5d6 or some variation
thereof. Grant Likely knows more, but I think full relocation
was reverted due to some toolchains had problems with it.

I once tried an early version of full relocation and it worked
for me.
I am using gcc 3.4.6, softfloat and ld 2.16.1 built with
gentoo's crossdev.

I am gone in a few hours and won't return until a few days after
X-mas. Access to E-mail will be limited.


More information about the U-Boot mailing list