Hi Eric,

On 10.11.2010 00:43, Eric Cooper wrote:
> I have been periodically rebasing my patches for the Seagate DockStar
> on master.  But ever since the elf_reloc changes were merged, I have
> been unable to get a working build.  First I saw symptoms similar to
> what Alexander Holler reported (failing during NAND initialization due
> to incorrect BSS relocation), but the latest arm926ejs ld script
> patches did not fix it.  The system would hang here:
> 
>     U-Boot 2010.12-rc1 (Nov 09 2010 - 17:52:38)
>     Seagate FreeAgent DockStar
> 
>     SoC:   Kirkwood 88F6281_A0
>     DRAM:  128 MiB
>     NAND:  
> 
> This was built with the CodeSourcery 2010q1 toolchain.  I also
> included Alexander's patch to double-check the relocation, and no
> error message gets printed.

Did you locally fix arch/arm/cpu/arm926ejs/kirkwood/timer.c to not
access uninitialized data (variables timestamp and lastdec) before
relocation?

Otherwise timer_init() will write into the relocation table which may
lead to your problem. If you change unrelated code, timer_init() will
overwrite some other relocation table entries and U-Boot seems to work.

@Albert: If your patch is applied without fixing the accesses to BSS
before relocation, some ARM ports will be broken even when compiling
with ELDK 4.2.

Best regards,
Daniel

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to