[U-Boot-Users] TEXT_BASE problem
Rui Sousa
rui.sousa at laposte.net
Sat Nov 11 10:54:21 CET 2006
On Friday 10 November 2006 18:49, Foldesi Tamas wrote:
> Hi everybody,
Hi Foldesi,
> I'm new here, greetings to everybody.
> I built a board for AT91RM9200 based on the DK; the main difference
> is, that I have no paralell flash, only serial. I had my fights with
> this, mainly because of some data aborts tring to cp to the flash, but
> now that is over. Sincs I have 64M ram on the board I'd like to move
> u-boot to 0x23f00000 from 0x21f00000. I did that I think, because I
> altered the code of the dataflashloader, and I set the TEXT_BASE in
> board/at91rm9200dk/config.mk. Still, I receive Data abort while
> running MTEST, because of some spourius data around (0x21eddb..).
> Before moving u-boot, I had the same problem - I had to change the
> mtest range, so it doesn't destroy anything around there. Help me, how
> could anything be under 0x21f00000, when TEXT_BASE is set?
U-boot code and data are above TEXT_BASE but the stack, memory heap and
global variables area is just bellow TEXT_BASE.
from lib_arm/board.c:
gd = (gd_t*)(_armboot_start - CFG_MALLOC_LEN - sizeof(gd_t));
...
mem_malloc_init (_armboot_start - CFG_MALLOC_LEN);
and from cpu/arm920t/start.S:
stack_setup:
ldr r0, _TEXT_BASE /* upper 128 KiB: relocated uboot */
sub r0, r0, #CFG_MALLOC_LEN /* malloc area */
sub r0, r0, #CFG_GBL_DATA_SIZE /* bdinfo */
#ifdef CONFIG_USE_IRQ
sub r0, r0, #(CONFIG_STACKSIZE_IRQ+CONFIG_STACKSIZE_FIQ)
#endif
sub sp, r0, #12 /* leave 3 words for abort-stack */
and remember that the stack grows down. I'm not sure if there is a hard lower
limit, but my guess is no.
> I used MD
> to display data there, and I got some frangments of the bootup text
> referring to my flash information like "Area 0: ...". What is wrong?
> Thanks
>
> Thomas Foldesi
Rui
More information about the U-Boot
mailing list