Where to put a large bootloader-supplied device tree on ARM ?

Nicolas Pitre nico at fluxnic.net
Thu Jul 12 14:16:01 EDT 2012


On Wed, 11 Jul 2012, Mitch Bradley wrote:
> On 7/8/2012 6:30 PM, Nicolas Pitre wrote:
> > On Fri, 6 Jul 2012, Mitch Bradley wrote:
> > 
> >> For now, I'm putting the initrd at the end of memory and the dtb
> >> below that.  That seems to work, but I'm unsure whether or not
> >> I'm just "getting lucky".
> > 
> > That's also perfectly fine.
> 
> Alas, that worked for machines with 512 MiB of main memory, but failed
> on 1 GiB machines.  My guess is that, when the initrd and dtb are near
> the top of a 1 GiB memory, the virtual address gets too near the top of
> the kernel's 1 GiB of virtual space (which starts at 0xc0000000),
> perhaps colliding with the VMALLOC space.

Indeed, that won't work in that case.

> Putting them just below the 128 MiB boundary seems to work.

Or at the 128MB mark, or any location between 64MB and 512MB should be 
fine in practice.


Nicolas



More information about the linux-arm-kernel mailing list