
In message 1206518897-15473-1-git-send-email-sr@denx.de you wrote:
If CFG_MEM_TOP_HIDE is defined in the board config header, this specified memory area will get subtracted from the top (end) of ram and won't get "touched" at all by U-Boot. By fixing up gd->ram_size the Linux kernel should gets passed the now "corrected" memory size and won't touch it either. This should work for arch/ppc and arch/powerpc. Only Linux board ports in arch/powerpc with bootwrapper support, that recalculate the memory size from the SDRAM controller setup will have to get fixed.
I'm afraid we still have a problem here...
- Changed value of CFG_MEM_TOP_HIDE from 256 to 4k so that memory end location is on a page boundary
This assumes a page size of 4 KiB, which is not necessarily true. As you know, we also support page sizes of 16, 64 and 256 KiB on 44x systems (even though so far this is only avaiable in arch/ppc).
I don't know of a good way to fix this, but I ask that you at least document the new variable in the README and probably add a big fat warning for page sizes other than 4 KiB.
Best regards,
Wolfgang Denk