Hi Wolfgang, On Fri, Aug 6, 2010 at 11:46 AM, Wolfgang Denk <w...@denx.de> wrote: > Dear Ben Gardiner, > > In message <aanlkti=tcf1m7umqs6iqj47e7pxndjkex1bwu8rgy...@mail.gmail.com> you > wrote: >> >> First, for the 'shared ram' region which is 1...@0x80000000 I tried: >> #define CONFIG_SYS_INIT_SP_ADDR (0x80000000 + 128*1024 -1) > > The "-1" is probably a bad idea, as your stack will point to an odd > address then. Try and make this "-8" instead. Or "-16".
Good point. Thank you. But I think that the value loaded to sp is still wrong because of the restrictions on immediate arguments in ARM instructions. with (0x80000000 + 128*1024 -16): --- c1080078 <call_board_init_f>: c1080078: e59fd328 ldr sp, [pc, #808] ; c10803a8 <fiq+0x48> c108007c: e3a00000 mov r0, #0 ; 0x0 c1080080: eb00017f bl c1080684 <board_init_f> and with (0x80000000 + 128*1024 -8): --- c1080078 <call_board_init_f>: c1080078: e59fd328 ldr sp, [pc, #808] ; c10803a8 <fiq+0x48> c108007c: e3a00000 mov r0, #0 ; 0x0 c1080080: eb00017f bl c1080684 <board_init_f> and neither image is bootable. >> Then for the 'ARM local RAM' which is 8...@0xffff0000 I tried: >> #define CONFIG_SYS_INIT_SP_ADDR (0xffff0000 + 8*1024 -1) > > Again, try "-8" instead. Or "-16". doing so here yields unusable images also and the values assigned to sp seem to be the same as above. with (0xffff0000 + 8*1024 - 16): --- c1080078 <call_board_init_f>: c1080078: e59fd328 ldr sp, [pc, #808] ; c10803a8 <fiq+0x48> c108007c: e3a00000 mov r0, #0 ; 0x0 c1080080: eb00017f bl c1080684 <board_init_f> and with (0xffff0000 + 8*1024 - 8): ---- c1080078 <call_board_init_f>: c1080078: e59fd328 ldr sp, [pc, #808] ; c10803a8 <fiq+0x48> c108007c: e3a00000 mov r0, #0 ; 0x0 c1080080: eb00017f bl c1080684 <board_init_f> Best Regards, Ben Gardiner --- Nanometrics Inc. http://www.nanometrics.ca _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot