
Dear Peter Tyser,
In message 1254783670-21301-1-git-send-email-ptyser@xes-inc.com you wrote:
It looks like the 85xx platform is the only one which has boards with the bss at 0x0. It uses a slightly different linker script format which puts the bss after the reset vector, which is 0xfffffffc + 4 for a number of boards. Other platforms don't put their bss in a similar location, so they don't have this issue. I verified this by running MAKEALL and printing the bss address as well.
A few bytes of RAM are wasted for boards which used to have the bss at 0x0 FWIW.
I never understood how this is supposed to work at all.
We have two phases of operation:
1) before relocation to RAM. Here we actually do not have a working bss segment at all, no mater what the linker may think. 2) after relocation to RAM. Here we reserve space for the BSS at the end (well, more or less) of the RAM.
This whole "bss at 0x0" is a myth to me.
Best regards,
Wolfgang Denk