
On 7/3/07, Sascha Hauer s.hauer@pengutronix.de wrote:
And this is a bug. Statically initialized pointers are supposed to be fixed up during relocation. I've got a big patch set which I'll be posting this evening (and would have already posted if I wasn't having SMTP problems) that solves this for 5xx, 5xxx, 82xx & 83xx.
If you do not use statically initialized pointer on startup and running at the link address after startup, you do not need to fixup anything.
... assuming that the u-boot design goal is changed to use a static relocation address instead of the detected end of RAM.
I think the intent of relocation is that the u-boot image can always put itself at the end of SDRAM, regardless of how much ram is on the board. Not important for ports that have soldered down chips, but useful if the board has expandable memory.
When you can make use of this additional memory, ok. But I think on U-Boot this is hardly the case.
It's not a matter of making use of all the additional memory; it's more a matter of not having an unaccessable region in the middle of the RAM block. There are a *lot* of different board configurations and a lot of different complex systems that load more than just a linux kernel.
Cheers, g.