[yocto] Limit RAM for Linux

Edward Wingate edwingate8 at gmail.com
Tue Jun 9 09:10:24 PDT 2015


Typo in last email, I used "mem=256M", not "mem=256MB"

On Tue, Jun 9, 2015 at 9:03 AM, Edward Wingate <edwingate8 at gmail.com> wrote:
> Thanks, Nathan, for your help. It worked, with a little oddity I don't
> understand.
>
> In my uEnv.txt, I set both fdt_high and initrd_high to 0x10000000 and
> fdt/initrd are now loaded to 1st 256 MB:
>    Loading Kernel Image ... OK
>    Loading Ramdisk to 0f44c000, end 0ffff2f2 ... OK
>    Loading Device Tree to 0f443000, end 0f44bf40 ... OK
>
> However, with bootarg "mem=256MB", the kernel doesn't boot.
> With "mem=257M", it does:
>
> /proc/iomem:
> 00000000-100fffff : System RAM
>    00008000-00584b03 : Kernel code
>    005b6000-0061d5df : Kernel data
>
> I'd be OK with this, but just want to understand why I can't specify
> mem=256M?  I could probably also lower initrd_high and fdt_high a bit
> more to make mem=256M work, but why would that be necessary?
>
> Also, in the device tree entry for memory, should I leave "reg = <0x0
> 0x20000000>" or change that to reflect 256MB?  Changing it to "reg =
> <0x0 0x10000000>" didn't seem to have any effect.  The mem bootarg
> seems to be the thing that actually works to limit the amount of
> memory Linux sees.
>
>
> On Mon, Jun 8, 2015 at 9:45 PM, Nathan Rossi <nathan at nathanrossi.com> wrote:
>> On Tue, Jun 9, 2015 at 4:06 AM, Edward Wingate <edwingate8 at gmail.com> wrote:
>>
>> Those values are generated via u-boot based on the value of fdt_high
>> and initrd_high which are set in the u-boot environment. (At least for
>> Zynq)
>>
>> If you have a look at the default environment you will see them set to
>> 0x20000000:
>> http://git.denx.de/?p=u-boot.git;a=blob;f=include/configs/zynq-common.h;h=1a52e7d538261a9d36b078d61e00e60bf8918227;hb=HEAD#l217
>>
>> You can override those environment variables with your uEnv.txt file,
>> setting it to 0x10000000 will make sure they fdt/initrd is loaded into
>> the first 256M.
>>
>> Regards,
>> Nathan
>>



More information about the yocto mailing list