Re: [U-Boot-Users] mpc8641d and CONFIG_VERY_BIG_RAM (Chris Fester)

Hi Chris, if you don't defined CONFIG_VERY_BIG_RAM with a big RAM size like 1GB, you may have another bug when you attempt to boot a Linux with a ramdisk. When you have big RAM, you must generally enable HIGHMEM support in Linux. If you try to boot an U-Boot image-multi (Kernel + ramdisk) without setting CONFIG_VERY_BIG_RAM, the ramdisk will be placed at the end of the memory (upper than 512MB). The issue is that ramdisk must not be in HIGHMEM area (Low Memory 0 to 512MB, High Memory 512MB to 1GB in my example) because of HIGHMEM is not functional when Kernel attempts to un-compress ramdisk during init phase.
If you want to keep CONFIG_VERY_BIG_RAM un-define in U-Boot, you have another tip that force U-Boot to set ramdisk in Low Memory area. Set "initrd_high" environemental U-Boot parameter to no or to a valid Low memory address (see code of do_bootm_linux function in cmd_bootm.c file)
Best regards, Sebastien D.
Envoyez vos cartes de voeux depuis www.laposte.net Elles seront ensuite distribuées par le facteur : pratique et malin !

On Tue, 2007-02-27 at 10:48 +0100, Sebastien Douheret wrote:
If you want to keep CONFIG_VERY_BIG_RAM un-define in U-Boot, you have another tip that force U-Boot to set ramdisk in Low Memory area. Set "initrd_high" environemental U-Boot parameter to “no” or to a valid Low memory address (see code of do_bootm_linux function in cmd_bootm.c file)
Sebastien, thank you much for the tip. :) I'll probably set the initrd_high env variable and keep CONFIG_VERY_BIG_RAM undefined. If I get some time I'll post a patch to update the README with the information you provided.
Thanks! Chris
participants (2)
-
Chris Fester
-
Sebastien Douheret