mirror of
https://github.com/Stichting-MINIX-Research-Foundation/u-boot.git
synced 2025-09-16 15:36:22 -04:00
avr32: fix relocation address calculation
Commit 1865286466a5d0c7f2e3c37632da56556c838e9e (Introduce generic link section.h symbol files) changed the __bss_end symbol type from char[] to ulong. This led to wrong relocation parameters which ended up in a not working u-boot. Unfortunately this is not clear to see cause due to RAM aliasing we may get a 'half-working' u-boot then. Fix this by dereferencing the __bss_end symbol where needed. Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
This commit is contained in:
parent
bbd0f7e3ba
commit
a7e62be091
@ -116,7 +116,7 @@ static int display_banner (void)
|
|||||||
printf ("\n\n%s\n\n", version_string);
|
printf ("\n\n%s\n\n", version_string);
|
||||||
printf ("U-Boot code: %08lx -> %08lx data: %08lx -> %08lx\n",
|
printf ("U-Boot code: %08lx -> %08lx data: %08lx -> %08lx\n",
|
||||||
(unsigned long)_text, (unsigned long)_etext,
|
(unsigned long)_text, (unsigned long)_etext,
|
||||||
(unsigned long)_data, (unsigned long)__bss_end);
|
(unsigned long)_data, (unsigned long)(&__bss_end));
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -183,7 +183,7 @@ void board_init_f(ulong board_type)
|
|||||||
* - stack
|
* - stack
|
||||||
*/
|
*/
|
||||||
addr = CONFIG_SYS_SDRAM_BASE + sdram_size;
|
addr = CONFIG_SYS_SDRAM_BASE + sdram_size;
|
||||||
monitor_len = (char *)__bss_end - _text;
|
monitor_len = (char *)(&__bss_end) - _text;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Reserve memory for u-boot code, data and bss.
|
* Reserve memory for u-boot code, data and bss.
|
||||||
|
Loading…
x
Reference in New Issue
Block a user