diff options
Diffstat (limited to 'c/src/lib/libbsp/powerpc/shared/ChangeLog')
-rw-r--r-- | c/src/lib/libbsp/powerpc/shared/ChangeLog | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/c/src/lib/libbsp/powerpc/shared/ChangeLog b/c/src/lib/libbsp/powerpc/shared/ChangeLog index 7443efbdf7..bec24b2a92 100644 --- a/c/src/lib/libbsp/powerpc/shared/ChangeLog +++ b/c/src/lib/libbsp/powerpc/shared/ChangeLog @@ -1,3 +1,24 @@ +2003-09-26 Till Strauman <strauman@slac.stanford.edu> + + PR 496/bsps + * startup/sbrk.c: New file. + * startup/bspstart.c: This patch implements 'sbrk' + for the powerpc-shared BSP to work around what's known as the + '32Mb problem' in combination with run-time loaded code. + GCC normally generates (PowerPC) code doing 'short jumps' which + requires all text segments being in the same 32Mb area of memory. + However, some run-time loaders use (e.g. heap-) memory violating the + stated limitation on hardware with more than 32Mb of memory. + (NOTE: portable loaders are probably not even aware of this + GCC/CPU specific problem.) + + This patch implements a simple workaround: At boot time, the system is + only provided with 32Mb of memory. The user is supposed to load all + necessary modules prior to that limit being exhausted. Once that + happens, newlib/malloc end up trying to 'sbrk()' for more memory and + the implementation provided by this patch will then make the rest of + the physical memory available. + 2003-09-26 Till Straumann <strauman@slac.stanford.edu> PR 497/bsps |