
Dear Dave Kucharczyk,
On Wed, Feb 25, 2015 at 3:19 AM, DaveKucharczyk david.kucharczyk@gmail.com wrote:
I'm porting U-Boot for an MX51 based board.
This is the boot sequence with debug on...
U-Boot 2014.07-svn10 (Feb 24 2015 - 15:49:39)
initcall: 9ff85820 U-Boot code: 9FF80000 -> 9FFA6824 BSS: -> 9FFD944C initcall: 9ff8118c CPU: Freescale i.MX51 rev3.0 at 800 MHz initcall: 9ff858ac I2C: ready initcall: 9ff85894 DRAM: initcall: 9ff81ff4 initcall: 9ff85a04 Monitor len: 0005944C Ram size: 10000000 Ram top: A0000000 initcall: 9ff855b0 initcall: 9ff857c8 TLB table from 9fff0000 to 9fff4000 initcall: 9ff855c8 initcall: 9ff8577c Reserving 357k for U-Boot at: 9ff96000 initcall: 9ff85750 Reserving 1280k for malloc() at: 9fe56000 initcall: 9ff85850 Reserving 88 Bytes for Board Info at: 9fe55fa8 initcall: 9ff855d0 initcall: 9ff8571c Reserving 216 Bytes for Global Data at: 9fe55ed0 initcall: 9ff856b8 initcall: 9ff855e4 initcall: 9ff859ec initcall: 9ff85948
RAM Configuration: Bank #0: 90000000 256 MiB
DRAM: 256 MiB initcall: 9ff8569c New Stack Pointer is: 9fe55eb0 initcall: 9ff85618 initcall: 9ff85648 Relocation Offset is: 00016000 Relocating to 9ff96000, new gd at 9fe55ed0, sp at 9fe55eb0
And that's where it hangs and resets in a continuous loop.
I confirmed that the entire init_sequence completed in board_f.c, but never makes it to board_r.c
So...according to ./arch/arm/lib/crt0.S ...
/* assembly code */
board_init_f <--we make it out of here
/* assembly code */ <-- stuck somewhere in here
relocate_code <-- stuck somewhere in here
/* assembly code */ <-- stuck somewhere in here
board_init_r <--we never make it here
I can't sprinkle any debug statements where it's stuck because it's all assembly. Before I break out the BDI tomorrow does anyone have any ideas?
BTW it works on our 512MB board, but not the 256MB board. Thanks.
The following needs to be added for i.MX51 and i.MX53 too: http://lists.denx.de/pipermail/u-boot/2015-February/205849.html
This should fix your issue.
Best regards, Benoît